| 
   import java.io.File;
 import java.io.FileInputStream;
 import java.io.IOException;
 import java.io.FileNotFoundException;
 import java.nio.ByteBuffer;
 import java.nio.channels.FileChannel;
 
 public class MainClass {
 public static void main(String[] args) {
 File aFile = new File("file.dat");
 FileInputStream inFile = null;
 
 try {
 inFile = new FileInputStream(aFile);
 } catch (FileNotFoundException e) {
 e.printStackTrace(System.err);
 System.exit(0);
 }
 FileChannel inChannel = inFile.getChannel();
 final int COUNT = 6;
 ByteBuffer buf = ByteBuffer.allocate(8 * COUNT);
 long[] data = new long[COUNT];
 try {
 while (inChannel.read(buf) != -1) {
 ((ByteBuffer) (buf.flip())).asLongBuffer().get(data);
 System.out.println();
 for (long prime : data)
 System.out.printf("%10d", prime);
 buf.clear();
 }
 System.out.println("\nEOF reached.");
 inFile.close();
 } catch (IOException e) {
 e.printStackTrace(System.err);
 System.exit(1);
 }
 }
 }
 
 
 
 
 
 
 |