试图用Java解析org.w3c.dom.Document XML文档
我只想从字符串标签中获取数字。现在,Java程序认为字符串标记包含null。提前谢谢你的帮助 这是XML试图用Java解析org.w3c.dom.Document XML文档,java,xml,Java,Xml,我只想从字符串标签中获取数字。现在,Java程序认为字符串标记包含null。提前谢谢你的帮助 这是XML <?xml version="1.0"?> <ArrayOfstring xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> <string>6540321</s
<?xml version="1.0"?>
<ArrayOfstring xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<string>6540321</string>
<string>6540322</string>
<string>6540323</string>
<string>6540324</string>
<string>6540325</string>
</ArrayOfstring>
以下是我尝试遵循的教程:您可以尝试使用
.getTextContent()
另见:
public static void toOrderListFromXML() throws ParserConfigurationException, SAXException, IOException {
File fXmlFile = new File("test.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
org.w3c.dom.Document doc = dBuilder.parse(fXmlFile);
doc.getDocumentElement().normalize();
System.out.println("Root element :" + doc.getDocumentElement().getNodeName());
NodeList nList = doc.getElementsByTagName("string");
for (int temp = 0; temp < nList.getLength(); temp++) {
Node nNode = nList.item(temp);
System.out.println("\nCurrent Element :" + nNode.getNodeName());
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
System.out.println("Order number: " + eElement.getNodeValue());
}
}
}
Root element :ArrayOfstring
Current Element :string
Order number: null
Current Element :string
Order number: null
Current Element :string
Order number: null
.......................
.......................
public static void toOrderListFromXML() throws ParserConfigurationException,
SAXException, IOException {
File fXmlFile = new File("test.xml");
DocumentBuilderFactory dbFactory =
DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
org.w3c.dom.Document doc = dBuilder.parse(fXmlFile);
doc.getDocumentElement().normalize();
System.out.println("Root element :" +
doc.getDocumentElement().getNodeName());
NodeList nList = doc.getElementsByTagName("string");
for (int temp = 0; temp < nList.getLength(); temp++) {
Node nNode = nList.item(temp);
System.out.println("\nCurrent Element :" + nNode.getNodeName());
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
System.out.println("Order number: " +
eElement.getTextContent());
}
}
}
}
Root element :ArrayOfstring
Current Element :string
Order number: 6540321
Current Element :string
Order number: 6540322
Current Element :string
Order number: 6540323
Current Element :string
Order number: 6540324
Current Element :string
Order number: 6540325