0

いくつかの圧縮アルゴリズムを実装しようとしていますが、Java でビットを処理する必要があります。

私がする必要があるのは、値1を書き込んでから値2を書き込むと、これらの数値がファイルにビットとして格納されるため、ファイルサイズは2ではなく1バイトになります.1は1ビットに格納され、2は2 ビットで格納されます。

出来ますか?どうもありがとう

4

1 に答える 1

1

すべての I/O メソッドには、最小の粒度としてバイトがあります。ビットを書き込むことはできますが、自分でバイトにパックする必要があります。ファイルがいっぱいになったときにファイルに書き出す 1 バイトのバッファが適切かもしれません。

また、ファイルの長さをビット単位で知る方法がないことに注意してください (最後のバイトが「いっぱい」だったかどうかはわかりません)。したがって、アプリケーションは何らかの方法でそれを処理する必要があります。

非常に一般的なライブラリではありませんが、「BitOutputStream」をグーグルで検索することもできます。たぶん、そのうちの1つを使用してください。

最後に、作成するファイルは「テキスト」ファイルではなく、非常にバイナリになります (通常よりもさらに...)

于 2010-10-08T01:30:59.920 に答える