【发布时间】:2017-06-19 18:14:09
【问题描述】:
以下是本地xml文件的内容
<configuration>
<property>
<name>test</name>
<value>A</value>
</property>
</configuration>
如何在 java 中读取值“A”? 这是我在 Java 中测试的代码
Properties properties = new Properties();
FileInputStream fis = new FileInputStream("path to file");
properties.load(fis);
String test = properties.getProperty("test");
System.out.println(test);
是java代码的问题吗?我似乎无法将名称与值相关联。此外,我无法读取属性值,因为真实文件包含多对名称-值。
File file = new File("path to file");
DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory
.newInstance();
DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
Document dom = documentBuilder.parse(file);
Element docEle = dom.getDocumentElement();
NodeList nl = docEle.getChildNodes();
ArrayList<String> names = new ArrayList<String>();
ArrayList<String> values = new ArrayList<String>();
if (nl != null) {
int length = nl.getLength();
for (int i = 0; i < length; i++) {
if (nl.item(i).getNodeType() == Node.ELEMENT_NODE) {
Element el = (Element) nl.item(i);
if (el.getNodeName().contains("configuration")) {
names.add( el.getElementsByTagName("name").item(0).getTextContent());
System.out.println(el.getElementsByTagName("name").item(0).getTextContent());
values.add( el.getElementsByTagName("value").item(0).getTextContent());
System.out.println(el.getElementsByTagName("value").item(0).getTextContent());
}
}
}
}
【问题讨论】:
-
我读到了,但在示例中,它们具有用户和通行证的唯一字段。我的示例中的名称/值字段是重复的。