Node.getChildNodes()返回的额外对象是什么?

时间:2014-10-05 18:50:35

标签: java xml dom

我使用函数Node.getChildNodes();来创建我需要使用的元素的NodeList。这是代码行:

NodeList nList = doc.getElementsByTagName("mealsaves").item(0).getChildNodes();

当我打印它打印的第一个对象的名称时#34; #text"当我打印文本内容时,它会打印几个空行。似乎列表中的每个其他对象都这样做。

有人可以告诉我这个对象是什么/我可以用它做什么?

编辑:例如,当我用这个打印出数组的结果时:

for (int i=0;i<nList.getLength();i++) {
    System.out.println(nList.item(i).getNodeName() + " - " + nList.item(i).getTextContent());
}

打印出来:

#text - 

ms1 - 
                obj1
                obj2
                obj3
                obj4
                obj5
                obj6
                obj7      

#text -   

ms2 - 
                obj1
                obj2
                obj3
                obj4
                obj5
                obj6
                obj7

#text -   

编辑2:XML代码

<saves>
    <diet>
        <mealsaves>
            <ms1>
                <name>obj1</name>
                <serving>obj2</serving>
                <calories>obj3</calories>
                <fat>obj4</fat>
                <carbs>obj5</carbs>
                <protein>obj6</protein>
                <mealtype>obj7</mealtype>         
            </ms1>  
            <ms2>
                <name>obj1</name>
                <serving>obj2</serving>
                <calories>obj3</calories>
                <fat>obj4</fat>
                <carbs>obj5</carbs>
                <protein>obj6</protein>
                <mealtype>obj7</mealtype>         
            </ms2>  
        </mealsaves>
    </diet>
<saves>

1 个答案:

答案 0 :(得分:2)

它正是它所说的 - 它是一个文本节点。元素内部和周围的文本表示为文本节点。有时文本节点只包含空格。例如,这可能是由于行末或缩进处的额外空间造成的。

值得记住的是,根据解析器和平台的不同,某些空格可能被认为是“无关紧要的”。并离开解析后的树。