Java tutorial
import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; class MyClass implements Serializable { String str; double[] vals; File fn; public MyClass(String s, double[] nums, String fname) { str = s; vals = nums; fn = new File(fname); } public String toString() { String data = " str: " + str + "\n vals: "; for (double d : vals) data += d + " "; data += "\n fn: " + fn.getName(); return data; } } public class Main { public static void main(String[] argv) throws Exception { double v[] = { 1.1, 2.2, 3.3 }; double v2[] = { 9.0, 8.0, 7.7 }; MyClass obj1 = new MyClass("This is a test", v, "Test.txt"); MyClass obj2 = new MyClass("Alpha Beta Gamma", v2, "Sample.dat"); ObjectOutputStream fout = new ObjectOutputStream(new FileOutputStream("obj.dat")); System.out.println("obj1:\n" + obj1); fout.writeObject(obj1); System.out.println("obj2:\n" + obj2); fout.writeObject(obj2); fout.close(); ObjectInputStream fin = new ObjectInputStream(new FileInputStream("obj.dat")); MyClass inputObj; inputObj = (MyClass) fin.readObject(); System.out.println("First object:\n" + inputObj); inputObj = (MyClass) fin.readObject(); System.out.println("Second object:\n" + inputObj); fin.close(); } }