2012-02-17 27 views
-3

zlibを使って整数の配列を圧縮することについて緊急の助けが必要です。これはc言語で書かれています。 私は:uint16_t arrayOfData [120]と私は圧縮されたバージョンを取得し、同じプログラムで使用する(私はストリームから読み書きしたくない)圧縮したい。 サンプルコードが利用可能であれば、私は助けを待っています。事前zlibを使ってCの整数配列を圧縮する

+3

[何を試しましたか?](http://mattgemmell.com/2008/12/08/what-have-you-tried/) –

+0

クローズアップをしたい人には、考え直してください。この質問は有効でトピック上にあるようです。それは確かに研究が欠けている。しかし、それは一般的ではなく、著者は必要なことについてはっきりとしています。 IMHO、それは閉鎖ではなく、「-1」に値する。 – quetzalcoatl

答えて

2

おかげhttp://zlib.net/zlib_how.htmlの例があります。

+0

以下のコードはcompression.Actuallyの私の試みです。実際には、コードのようにCHARSではなくINTEGERSの配列を圧縮したいと思います。圧縮と圧縮解除メソッドは、バッファ(入力と出力)のUNSIGNED CHAR *私の質問は、どのように私はコードをint型(入力バッファと出力)で扱うことができますか?zlibパラメータを変更するか、intからcharにキャストするだけです(キャストしようとしましたがエラーがあります) –

+0

キャスティングはうまくいきます。整数の配列を含むすべてのデータは、一連のバイトとして扱うことができます。配列のバイト数が正しく計算されていることを確認してください。同じマシンで圧縮して解凍しても、問題はありません。マシン間で圧縮データを転送する場合は、整数のバイトの長さと順序に注意する必要があります。移植可能にするには、シフト演算を使用して整数をバイトとしてエンコードし、もう一方の演算を逆にする必要があります。 –

+0

助けていただきありがとうございます。実際には、圧縮されたバッファ(圧縮整数オーディオサンプル)をブロックとして別のPCに転送し、圧縮解除し、整数(サンプル)の配列として取得して再生する必要があります。サンプル。キャスティングがそのようなアプリケーションに問題を起こさないことを願っています。 –

関連する問題