1

MappedByteBufferインスタンスに基づくDataInputStreamを作成できるかどうか疑問に思いますか?

MappedByteBuffer buff = (initialize...);
ByteArrayInputStream bis = new ByteArrayInputStream(buff.array());

マップされたバイトバッファはアクセス可能な配列によってサポートされていないため、このコードスニペットはUnsupportedOperationExceptionをスローします。

次に、 loadメソッドを呼び出してバイトを物理メモリにロードしようとしましたが、無駄です。

助言がありますか ?

4

1 に答える 1

0

DataInputStreamのメソッドをオーバーライドして、MappedByteBufferを使用できます。

ただし、最も簡単なアプローチは、ほぼすべて同じメソッドをサポートするため、MappedByteBufferを直接使用することです。

于 2012-08-03T07:38:13.267 に答える