我想将ArrayList
类型的列表序列化到该文件中。但是这个列表的大小可能会不时更改,例如,如果它的大小是10000个元素,那么一段时间后我可能会添加另外10000个元素。
我使用以下代码进行序列化:
public class Serializer {
private Serializer() {
}
public static void serialize(String filename, List<String> list) {
try (FileOutputStream fos = new FileOutputStream(filename);
ObjectOutputStream out = new ObjectOutputStream(fos)) {
out.writeObject(list);
} catch (IOException ex) {
ex.printStackTrace();
}
}
public static List<String> deserialize(String filename) {
try (FileInputStream fis = new FileInputStream(filename);
ObjectInputStream in = new ObjectInputStream(fis)) {
return (List<String>) in.readObject();
} catch (Exception ex) {
ex.printStackTrace();
}
return new ArrayList<>();
}
}
我想知道是否有办法在现有文件的基础上序列化数据,而不是从头开始覆盖它。