Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用DOM解析Java中的xml文件_Java_Xml_Dom_Xml Parsing - Fatal编程技术网

用DOM解析Java中的xml文件

用DOM解析Java中的xml文件,java,xml,dom,xml-parsing,Java,Xml,Dom,Xml Parsing,我想解析此xml文件: <?xml version="1.0" encoding="utf-8"?> <resources> <string-array name="descripciones"> <item>one</item> <item>two</item> </string-array> </resources> 有办法解决吗?有没

我想解析此xml文件:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name="descripciones">
        <item>one</item>
        <item>two</item>
    </string-array>
</resources>
有办法解决吗?有没有更好的方法来提取标记之间的数据?

您需要在getTextContent()上执行trim()


您正在处理
字符串数组
的所有子节点,包括
节点前后的文本节点。试一试

int pos = 0;
for(int i=0; i<nl2.getLength();i++){
    Node n = nl2.item(i);
    if (n.getNodeType() == Node.ELEMENT_NODE)
    {
        pos++;
        String text=n.getTextContent();
        System.out.println(pos + text);
    }
}
int pos=0;
for(int i=0;i
for(int i=0;i
1 one
2
3 two
4
String text=nl2.item(i).getTextContent().trim();
int pos = 0;
for(int i=0; i<nl2.getLength();i++){
    Node n = nl2.item(i);
    if (n.getNodeType() == Node.ELEMENT_NODE)
    {
        pos++;
        String text=n.getTextContent();
        System.out.println(pos + text);
    }
}
for (int i = 0; i < nl2.getLength(); i++) {
     Node nt = nl2.item(i);
     if (nt.getFirstChild() != null) {
         String text = nt.getFirstChild().getNodeValue();
         System.out.println(text);
     }
}