我正在使用以下代码将数据写入属性文件
public void WritePropertiesFile(String key, String data)
{
Properties configProperty = new Properties();
configProperty.setProperty(key, data);
File file = new File("D:\\Helper.properties");
FileOutputStream fileOut = new FileOutputStream(file,true);
configProperty.store(fileOut, "sample properties");
fileOut.close();
}
I am calling the above method 3 times as follows:
help.WritePropertiesFile("appwrite1","write1");
help.WritePropertiesFile("appwrite2","write2");
help.WritePropertiesFile("appwrite3","write3");
但是Helper.properties文件中的数据显示如下:
#sample properties
#Mon Jul 01 15:01:45 IST 2013
appwrite1=write1
#sample properties
#Mon Jul 01 15:01:45 IST 2013
appwrite2=write2
appwrite1=write1
#sample properties
#Mon Jul 01 15:01:45 IST 2013
appwrite3=write3
appwrite2=write2
appwrite1=write1
我希望数据附加到现有数据并且不希望重复数据,如下所示:
appwrite3=write3
appwrite2=write2
appwrite1=write1
请建议如何做?
只是不要以附加模式打开文件。
您从文件中读取现有属性并再次写入它们。如果追加到该文件,则该文件的所有内容Properties
对象将被附加,因为这是您所要求的。
只需替换:
FileOutputStream fileOut = new FileOutputStream(file,true);
with:
FileOutputStream fileOut = new FileOutputStream(file);
旁注:你应该.close()
你的输出流在finally
block.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)