java检查文件是否还有序列化对象
我有一个包含多个序列化对象的文件,希望将它们反序列化并存储在数组列表中。为此,我需要知道对象输入流何时耗尽对象/文件输入流何时达到EOF。有办法吗
public ArrayList<Object> retriveAllObjects(String file) throws IOException, ClassNotFoundException {
FileInputStream f = new FileInputStream(file);
ObjectInputStream obj = new ObjectInputStream(f);
ArrayList<Object> array=new ArrayList<>();
while(obj!= null){ /////////////java.io.EOFException
array.add(obj.readObject());
}
return array;
}
obj
是我的对象输入流obj.available()
返回一个空的arraylist。
我还放置了一个try final块来处理错误。它起作用了。但是,让一个异常发生不是一种糟糕的做法吗
共 (0) 个答案