用Java更新属性文件

时间:2018-05-04 09:02:46

标签: java path

我必须更新属性文件中标记的值。我不得不在更新后继续保存文件的布局,所以我使用的是PropertiesConfiguration API形式的APACHE。

我已经完成了这项工作,功能正在按预期工作。现在这些vales的键很少有反斜杠()和正斜杠(/)。当我更新时,它会被改变。反斜杠被删除,更新和正斜杠(/)变为/ this。以下是我正在使用的示例代码

properties = new PropertiesConfiguration(("Dbconnect - Copy.properties"));
properties.setProperty("ConfigFilePath", "C:\\Amitabh\\Projects\\");
properties.save();
System.out.println("config.properties updated Successfully!!");

只知道我将如何预防。 谢谢&问候 Amitabh Pandey

1 个答案:

答案 0 :(得分:1)

如果你在这里查看https://docs.oracle.com/javase/7/docs/api/java/util/Properties.html

您将看到属性文件中的斜杠具有特殊含义。它们用于转义属性中的字符 - 例如,跨多行传播属性。因此,在将它们写入属性文件之前,您应该用双斜杠替换它们(实际上变为\\\\

如果您不使用Java标准属性读取器并自己读/写文件,则不会出现此类问题。例如,您可以将其作为文本文件打开,只需将属性添加到最后,基本上覆盖其他时间 - 作为解决方法。但最好尝试使用双倍(4)斜线