问题 Java属性文件规范[重复]


可能重复:
转义属性文件中的等号 

在.properties文件中,我可以在第一个之后使用字符'='吗?

喜欢这个:

url=http://www.example.org/test=

它是否被允许,我在哪里可以知道它确实是允许的?

到目前为止它似乎工作,但我不太确定它不会在以后打破。


10773
2018-01-12 14:20


起源

重复的 stackoverflow.com/questions/2406975/... - bluish


答案:


你可以放反斜杠转义字符 (\) 之前 = 和 :

或者更好地使用以下代码打印出您的属性应该如何 逃脱

                Properties props = new Properties();
                props.setProperty("url", "http://www.example.org/test=");
                props.store(System.out, null);

输出:

#Wed Jan 12 14:30:39 GMT 2011
url=http\://www.example.org/test\=

另外,请退房 Java API信息


5
2018-01-12 14:23



这是不正确的。你不需要逃避你的 = 和 : 字符,除非它们在属性的KEY中,而不是VALUE。 - Dawood ibn Kareem
是的,正如@DawoodibnKareem所说,这是不正确的。仅当值以以下值开头时:您必须转义它,否则将被忽略 - ACV
我写道“你可以放”而不是“你应该”。除此之外,我粘贴了Java6 Properties store()方法的默认行为。 - Lukasz


除非他们更改属性的规范,否则它将始终有效。看到 http://download.oracle.com/javase/6/docs/api/java/util/Properties.html#load%28java.io.Reader%29 对于规格。


7
2018-01-12 14:27