0

いくつかのバイトを含む 2 つの ByteBuffer があるとします... 1 つの ByteBuffer のすべてのコンテンツを別の ByteBuffer に追加するにはどうすればよいでしょうか? 私はこれをやっていますが、BufferUnderFlowExceptionをスローします:

ByteBuffer allData = ByteBuffer.allocate(999999);
ByteBuffer buff = null;
for (int i = 0; i < n; i++) {
    buff = aMethodThatReturnsAFilledByteBuffer();
    allData.put(buff);
}

私が間違っていることは何ですか?前もって感謝します。

4

2 に答える 2

0

などの操作flip()を暗示する操作の前にソース バッファーを使用するか、別のバッファーへの操作のソースとして使用する必要があります。また、後でその状態を復元する必要があります。get()write()put()compact()

于 2012-06-02T02:08:11.583 に答える