我有一段Java代码,将一些内容(地址)写入用户属性文件:

address_string = "http://"+address.getText()+":"+port.getText();

properties.setProperty("url", address_string);

prop.store(new FileOutputStream("user.properties"), "");


但是,当我检查user.properties时,没有得到正常的http地址,而是得到了以下内容:

 http\://localhost\:9000/softwarearchive/


冒号前面加反斜杠

我该如何解决这个问题?

最佳答案

属性文件具有特定的结构。参见:http://en.wikipedia.org/wiki/.properties

冒号是属性文件中的特殊元字符。如果要将键/值对存储在其中包含冒号的值中,则应将其转义以避免混淆。 Java的属性编写库正在为您完成转义。

如果使用properties.getProperty(),会得到所需的字符串吗?如果是这样,一切都很好。

07-28 03:16
查看更多