다음과 같이 ByteBuffer를 계속 읽는 상황이 있습니다.지정된 바이트 수만 읽는 ByteBuffer 및 FileChannel
ByteBuffer buffer = MappedByteBuffer.allocateDirect(Constants.BUFFER_SIZE);
그러나 독서의 경계에 도달 할 때 난 단지 boundaryLimit - FileChannel's current position
읽을 필요 (나머지 바이트를 읽을 때 BUFFER_SIZE보다 작).
경계 제한이 x이고 현재 위치가 y 인 경우, y
에서 x
까지 바이트를 읽고 그 이상으로 읽지 않아야합니다.
어떻게해야합니까?
새 용량으로 다른 인스턴스를 만들고 싶지 않습니다.
"* 읽기가 경계에 도달했을 때 *"란 무엇을 의미합니까? – aioobe
읽기만 계속 진행해야하는 한계가 있습니다. 그 이후의 바이트는 읽혀서는 안됩니다. 한계가 경계입니다. 업데이트 된 질문 – nobody