Tyl*_*ler 15 java apache-config apache-commons
我想从属性文件加载配置(apache commons配置).我的计划是:
PropertiesConfiguration pc = new PropertiesConfiguration("my.properties");
System.out.println(pc.getString("myValue"));
Run Code Online (Sandbox Code Playgroud)
在my.properties我有
myValue=value,
Run Code Online (Sandbox Code Playgroud)
用逗号
当我运行程序时,输出是value,而不是value, with comma.看起来值加载到,字符之前.
有任何想法吗?
ig0*_*774 13
这种行为是清楚记录的,即PropertiesConfiguration用逗号作为多个值处理值允许以下内容:
fruit=apples,banana,oranges
Run Code Online (Sandbox Code Playgroud)
理智地解释.修复(来自doc)是添加反斜杠以逃避逗号,例如,
myKey=value\, with an escaped comma
Run Code Online (Sandbox Code Playgroud)
小智 7
实际上 propConfig.setDelimiterParsingDisabled(true) 是有效的,但是您必须在设置后加载配置文件,例如:
propConfig = new PropertiesConfiguration();
propConfig.setDelimiterParsingDisabled(true);
propConfig.load(propertiesFile);
Run Code Online (Sandbox Code Playgroud)
如果您的代码如下所示,则设置将不起作用:
propConfig = new PropertiesConfiguration(propertiesFile);
propConfig.setDelimiterParsingDisabled(true);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8476 次 |
| 最近记录: |