如何使用这段代码追加数据?每次运行代码时,数据总是被覆盖。
try{
RandomAccessFile fileWriter = new RandomAccessFile("Officers.txt", "rw");
fileWriter.writeUTF(officerObject.getOfficerBadgeNum());
fileWriter.writeUTF(officerObject.getOfficerFirstName());
fileWriter.writeUTF(officerObject.getOfficerLastName());
fileWriter.writeUTF(officerObject.getOfficerPrecint());
fileWriter.close();
System.out.println("Data Successfully Saved");
}
catch (IOException e) {
System.out.println("Error in File. Could not SAVE Officer");
e.printStackTrace();
}
FileWriter
,就不能使用writeUTF()
。 - user207421FileWriter
几乎总是错误的选择,因为它总是使用默认编码。此外,请注意writeUTF
并不仅仅将字符串写成 UTF-8;它还会在字符串前面添加长度;相当的操作应该是DataOutputStream.writeUTF
。 - kdgregory