import java.io.*; class ProcessRecords { public static void main(String[] args) { Employee e1 = new Employee("doe", "john", 1); Employee e2 = new Employee("dough", "jane", 2); RandomAccessFile f = null; try { // Create file; add two records: System.out.println("Populating file..."); f = new RandomAccessFile("employees.dat", "rw"); e1.write(f); e2.write(f); System.out.println("e1 = " + e1); System.out.println("e2 = " + e2); System.out.println(); // Swap on re-reading: System.out.println("Reading file..."); f.seek(Employee.size); e1.read(f); f.seek(0); e2.read(f); System.out.println("e1 = " + e1); System.out.println("e2 = " + e2); } catch (IOException e) { e.printStackTrace(); return; } finally { if (f != null) { try { f.close(); } catch (IOException e) { System.out.println( "File close error: " + e ); } } } } } /* Output: Populating file... e1 = {doe,john,1} e2 = {dough,jane,2} Reading file... e1 = {dough,jane,2} e2 = {doe,john,1} */ End of Listing