我正在尝试更新属性文件,如下所示。
Properties props = new Properties();
FileInputStream in = new FileInputStream(filepath);
props.load(in);
in.close();
FileOutputStream out = new FileOutputStream(filepath);
props.setProperty(key, value);
props.store(out,"fileupdated");
out.close();
但总是我注意到新添加的属性会添加到文件中间的某些位置,我希望它只在最后添加。请告知我该如何解决这个问题。
另外,我需要更新核心属性文件。因此,如果更新属性文件时出现任何问题,我的服务器将停止运行。仅仅因为即使错过单一的现有财产也会受到影响。所以我打算创建一个临时文件,如果写成功,我将重命名为原始文件。如果还有其他更好的方法,请告诉我。
答案 0 :(得分:0)
尝试使用以下代码替换您的代码,如果您有多个键并且值进行循环以添加它们。还要确保在FileWriter的构造函数中放置属性文件的正确路径。
BufferedWriter bw = new BufferedWriter(new FileWriter("yourFile.properties", true));
bw.write(key + "=" + value);
bw.newLine();
bw.flush();
属性文件只是一个纯文本文件,实际上你的问题可以转换为"如何在文件末尾添加文本"