如何使用apache配置libraray获取属性值和标记值

时间:2015-05-25 04:39:08

标签: java regex apache

我正在使用Apache Commons Configuration来读取xml文件中的配置。 例如:配置

<example>
    ....
    <task id="123">example task1</task>
    <task id="456">example task2</task>
    ....
</example>

我想提取所有example.task,其中我需要以下形式的值

123-> example task1
456-> example task2

如何实现这一目标。

1 个答案:

答案 0 :(得分:1)

您可以使用xpath提取所需的信息。

XMLConfiguration config = new XMLConfiguration("ConfigTest.xml");
ConfigurationNode node = config.getRootNode();
config.getString("example/task[id= '123']"); // This returns the exact value

您还可以填充地图

Map<String, String> configMap = new HashMap<String, String>();
for (ConfigurationNode c : node.getChildren("task"))
{
    String key = (String)c.getAttribute(0).getValue();
    String value = (String)c.getValue();
    configMap.put(key, value);
}

代码专家来自: How to load xml file using apache commons configuration (java)?