Java ByteBuffer read from ReadableByteChannel

Description

Java ByteBuffer read from ReadableByteChannel

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("Main.java").getChannel();

    ByteBuffer buf = ByteBuffer.allocateDirect(10);

    int numRead = 0;
    while (numRead >= 0) {
      buf.rewind();//from  w  w w . j  ava2 s  . co  m

      numRead = channel.read(buf);

      buf.rewind();

      // Read bytes from ByteBuffer;
      for (int i = 0; i < numRead; i++) {
        byte b = buf.get();
        System.out.println(b);
      }
    }
  }
}



PreviousNext

Related