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();
// Read bytes from ByteBuffer; see also
for (int i = 0; i < numRead; i++) {
byte b = buf.get();
}
}
}
}