Read from a channel with a ByteBuffer : ReadableByteChannel « File Input Output « Java






Read from a channel with a ByteBuffer


import java.io.FileInputStream;
import java.nio.ByteBuffer;
import java.nio.channels.ReadableByteChannel;

public class Main {
  public static void main(String[] argv) throws Exception {
    ReadableByteChannel channel = new FileInputStream("infile").getChannel();

    ByteBuffer buf = ByteBuffer.allocateDirect(10);

    int numRead = 0;
    while (numRead >= 0) {
      buf.rewind();

      numRead = channel.read(buf);

      buf.rewind();

      for (int i = 0; i < numRead; i++) {
        byte b = buf.get();
      }
    }
  }
}

 








Related examples in the same category