0

新しい xz-javadoc ユーザーとして、XZInputStream を使用して圧縮解除されたバイトを読み取ろうとしています。したがって、私は xz-javadoc ( http://tukaani.org/xz/xz-javadoc/org/tukaani/xz/XZInputStream.html ) を読んでいます。

ドキュメントページでは、read()メソッドの説明に次のテキストがあります。

この入力ストリームから read() を使用して大量のデータを読み取るのは非効率的です。一度に 1 バイトずつ大量のデータを読み取る必要がある場合は、BufferedInputStream でラップします。

これはどういう意味ですか?この入力ストリームを BufferedInputStream にラップしますか?

4

1 に答える 1

1

これはどういう意味ですか?この入力ストリームを BufferedInputStream にラップしますか?

これは次のことを意味します。

InputStream is = new BufferedInputStream(new XZInputStream(file));
int by;
while ((by = is.read()) != -1)
{
     // do stuff with "by"
}
is.close();

したがって、バイトごとに読み取っていますが、入力はバッファリングされています。ここに長い説明もあります。

于 2016-08-14T11:00:33.807 に答える