import java.io.*; class Customer { public static final int MaxNameLength=40; public static final int CustomerRecordLength=MaxNameLength+4+4;//both int and float occupies 4 bytes. public String name; public int account; public float balance; public void display() { System.out.println("name="+name); System.out.println("account="+account); System.out.println("balance="+balance+"\n"); } }; class CustomerWrapper { protected static byte[] buffer=new byte[Customer.MaxNameLength]; public static Customer readCustomer(RandomAccessFile file) { Customer result=new Customer(); try { file.readFully(buffer, 0, Customer.MaxNameLength); result.name= new String(buffer,0,Customer.MaxNameLength); result.account=file.readInt(); result.balance=file.readFloat(); } catch (Exception er) { //if (er instanceof EOFException) { return null; } // System.out.println(er.getMessage()); } return result; } protected static void copyString(String str, byte[] buffer) { int len=str.length(); for (int i=0; i