1

入力ストリームが 1 つあります。まず、これのcrcを取得する必要があります。これは、私が知っている方法です。

 CRCUtils.getCRC32(IOUtils.toByteArray(is))

バイト配列から計算できるcrcUtilsのメソッドがあります。しかし、その後、この入力ストリームが再び必要になり、最後に到達するため、前のものを使用できません。では、isのcrcとクローンを取得する方法はありますか?

4

4 に答える 4

0

あなたはそのようにすることができます:

byte[] byteArr = IOUtils.toByteArray(is);
CRCUtils.getCRC32(byteArr);
InputStream is1 = new ByteArrayInputStream(byteArr); 
于 2013-02-26T15:25:30.083 に答える
0

サポートされている場合は、入力ストリームでマークを使用できます。

于 2013-02-26T15:25:42.243 に答える
0

ファイルを処理する前にCRC値が必要ない場合は、CRC値FilteredInputStreamを取得するためのいくつかのボーナスメソッドを使用して、読み取ったすべてをCRC32に渡すサブクラスを作成することもできます。

于 2014-03-13T22:15:51.483 に答える