我使用java.util.Properties在文件中存储属性。我可以使用以下代码成功存储键/值对:
readNullable
但是,我有兴趣更新(不替换)以前的属性,以便稍后可以将它们作为数组检索。
例如,我当前的属性看起来像这样:
public String setKeyValue(String dir, String key, String value) throws FileNotFoundException, IOException
{
File file = new File(dir);
FileInputStream in = new FileInputStream(file);
Properties properties = new Properties();
properties.load(in);
in.close();
FileOutputStream out = new FileOutputStream(file);
properties.setProperty(key, value);
properties.store(out, null);
out.close();
String myValue = (String) properties.getProperty(key);
System.out.println (myValue);
return myValue;
}
我想将其更改为
email=email1
这样我以后可以按如下方式检索它们:
email=email1, email2 //(this will be a continuous process of adding more emails)
如果您使用之前的代码,它只是替换该属性。我需要附加额外的"值"关键..
答案 0 :(得分:1)
嗯,最简单的方法就是这样做......
+00:00
当然,这不是很优雅,所以我个人可能会从String oldValue = properties.getProperty( key );
String newValue = "bla something";
String toStore = oldValue != null ? oldValue + "," + newValue : newValue;
properties.setProperty( key, value );
扩展我自己的AppenderProperties
课程,然后添加Properties
方法。这也是放置所有与数组相关的方法的好地方,这样你就可以从键中删除特定的值等。