Ваш код читает только первый элемент в вашем двоичном файле.
public static void restore(String filename) throws IOException, ClassNotFoundException
{
FileInputStream fn = new FileInputStream(filename);
ObjectInputStream ob = new ObjectInputStream(fn);
String string1 = (String) ob.readObject();
String string2 = (String) ob.readObject();
}
Вы уверены, что не перезаписали свой файл при его сериализации?
Но, насколько я понимаюВаш вопрос: вы не хотите сериализовать / десериализовать String-Object вместо чтения / записи текстового файла.
Если вы просто хотите прочитать / записать файл, вы ошиблись с ObjectInputStream
взгляните на: http://download.oracle.com/javase/1.3/docs/api/java/io/BufferedReader.html