关于java dom解析的问题

如下的xml代码:

<persons>
    <person>
        <name>小强</name>
        <sex>male</sex>
        <age>20</age>
    </person>
    <person>
        <name>小明</name>
        <sex>male</sex>
        <age>21</age>
    </person>
</persons>

用dom解析的出来的element的子元素会包含空格。什么意思呢?就拿根元素DocumentElement来说,在此xml中的DocumentElement是persons。然后我们看到persons包含着两个person子元素才对,可是当你输出documentelement的length的时候,会惊奇的发现居然输出5.这是因为解析的时候把空格也包含进去了。具体看下面代码

<persons>--------------------------------------------------------------------
---<person>
        <name>小强</name>
        <sex>male</sex>
        <age>20</age>
    </person>-----------------------------------------------------------------
---<person>
        <name>小明</name>
        <sex>male</sex>
        <age>21</age>
    </person>-----------------------------------------------------------------
</persons>

用虚线代替空格。上面有三条虚线。都会被解析成为元素的子元素。所以才会输出5.

时间: 2024-10-11 21:25:58

关于java dom解析的问题的相关文章

org.w3c.dom(java dom)解析XML文档

位于org.w3c.dom操作XML会比较简单,就是将XML看做是一颗树,DOM就是对这颗树的一个数据结构的描述,但对大型XML文件效果可能会不理想 首先来了解点Java DOM 的 API:1.解析器工厂类:DocumentBuilderFactory 创建的方法:DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 2.解析器:DocumentBuilder 创建方法:通过解析器工厂类来获得 DocumentBu

java DOM解析xml文件出现#text节点解决方案

java DOM解析xml文件出现#text节点解决方案 原生java解析xml的方法提供了两个,DocumentBuilder 和 SAXParser. 试了第一个DOM方法,在解析输出节点过程中,getNodeName()输出节点名发现多出了几个#text节点. text.xml <?xml version="1.0" encoding="UTF-8"?> <!-- xml解析测试文件 --> <LData> <ldat

Java Dom解析xml

Dom解析是将xml文件全部载入,组装成一颗dom树,然后通过节点以及节点之间的关系来解析xml文件,下面结合这个xml文件来进行dom解析. Xml代码 <?xml version="1.0" encoding="UTF-8"?> <books> <book id="12"> <name>thinking in java</name> <price>85.5</pri

java Dom 解析 XML 详细解答

Dom4j遍历解析XML测试 近来老和XML打交道,不深挖不行了.. 这是一个Dom4j解析XML的例子,为做复杂递归处理前期所写的例子.涵盖了XML的解析方面大部分核心API. 环境: Dom4j-1.6.1 Dom4j解析需要XML需要的最小类库为: dom4j-1.6.1.jar jaxen-1.1-beta-6.jar 目标: 解析一个xml,输出所有的属性和元素值. 测试代码: XML文件: <?xml version="1.0" encoding="GBK&

java Dom解析

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); document = builder.parse(new File(FILE_PATH)); document.normalize(); return document;

Java从零开始学四十二(DOM解析XML)

一.DOM解析XML xml文件 favorite.xml <?xml version="1.0" encoding="UTF-8" standalone="no"?> <PhoneInfo name="手机品牌"> <Brand name="华为"> <Type name="U8650"> </Type> </Brand

用java操作XML文件(DOM解析方式)

XML 可扩展标记语言(Extensible Markup Language),是独立于软件和硬件的传输工具. XML的作用: (1)用作配置文件 (2)简化数据共享 (3)简化数据传输 XML DOM解析方式 在java工程中导入dom4j.jar包. (一)用java读XML文件 <1>创建SAXReader对象. RAXReader reader=new RAXReader(); <2>调用RAXReader的Document read(File file)方法,获取xml文

java中的xml简介与DOM解析xml

1. xml简介 XML:指可扩展标记语言, Extensible Markup Language:类似HTML.XML的设计宗旨是传输数据,而非显示数据. 一个xml文档实例: 1 <?xml version="1.0" encoding="UTF-8"?> 2 <company name="Tencent" address="深圳市南山区"> 3 <department deptNo=&quo

Java XML的总结(三)--Dom解析

一.JAXP DOM解析 javax.xml.parsers 1.获得document对象 //获得实例工厂 *javax.xml.parsers.DocumentBuilderFactory DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); //获得解析 *javax.xml.parsers.DocumentBuilderFactory DocumentBuilder builder = factory