相关疑难解决方法(0)

使用Apache Commons Configuration在属性文件中使用值列表进行变量插值,即$ {variable}

我正在使用Apache Commons Configuration来读取属性文件,我完全能够进行变量插值,并且还可以将多值属性作为列表进行检索.但是,我无法正确加载具有多个值的属性,其中一个属性是另一个多值属性的引用(变量插值).

这是我的属性文件的示例(我也尝试使用逗号分隔语法):

doc.mime=application/msword
doc.mime=application/vnd.openxmlformats-officedocument.wordprocessingml.document
doc.mime=${office.mime}

office.mime=application/x-tika-msoffice
office.mime=application/x-tika-ooxml
Run Code Online (Sandbox Code Playgroud)

以及我如何阅读它:

Configuration config = new PropertiesConfiguration("myFile");
final String[] mimesArray = config.getStringArray("doc.mime");
for(String mime : mimesArray) System.out.println(mime);
final List<Object> mimesList = config.getList("doc.mime");
System.out.println(mimesList);
Run Code Online (Sandbox Code Playgroud)

这是我用任何一种方法得到的内容(getStringArraygetList):

[application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document, application/x-tika-msoffice]

这跟我想象中的不同:两者的全部内容doc.mimeoffice.mime

有谁知道是否有可能在我的其他列表中插入整个值列表?如果是这样,它是如何完成的?

java properties apache-commons-config

5
推荐指数
1
解决办法
6136
查看次数

标签 统计

apache-commons-config ×1

java ×1

properties ×1