我正在制作配置类。我希望它只在BufferedWriter没有写入名称时才写入。如果已写入名称,则更新该值。我不知道该怎么做。到目前为止,这是我的写作功能。
public void setString(String name, String value) {
try {
bufferedWriter.write(name + ": " + value);
bufferedWriter.newLine();
} catch (IOException e) {
e.printStackTrace();
}
}
答案 0 :(得分:1)
Properties prop = new Properties();
InputStream input = null;
boolean exist = false;
try {
input = new FileInputStream("config.properties");
//loading the property file
prop.load(input);
// checking if the property exist
exist = prop.getProperty("name")==null ? false : true;
} catch (IOException ex) {
ex.printStackTrace();
}
if(!exist){
//then write to the file.
OutputStream output = null;
try {
output = new FileOutputStream("config.properties");
prop.setProperty("name", "yourname");
//saving the property to the file
prop.store(output, null);
} catch (IOException io) {
io.printStackTrace();
}
}
因为您正在创建configuration
类,所以您可以在java中使用Properties
来执行此操作。
您可以加载properties
文件,并检查上述方法是否存在数据,如果没有,则可以编写数据。