2 tzizi5566 tzizi5566 于 2015.07.13 14:51 提问

使用DOM4J 怎么解析这种XML?
xml
<?xml version='1.0' encoding='UTF-8'?>
<DBSET RESULT="1">
    <R>
        <C N="RLT_FLAG">0</C>
        <C N="TASK_TAIL">
            <DBSET RESULT="2">
                <R>
                    <C N="TASK_NO">131103507930</C>
                    <C N="TASK_TOTAL">8</C>
                    <C N="TASK_NODONE">8</C>
                    <C N="TASK_TYPE">01</C>
                </R>
            </DBSET>
        </C>
    </R>
</DBSET>

我使用DOM4J只能解析到RLT_FLAG = 0 就没有了,希望高手能帮忙解决下

主要是不会解析这种xml,根据网上看来的自己试只能解析到RLT_FLAG。

2个回答

lingfeiwen
lingfeiwen   2015.07.13 15:05
已采纳

你这个xml格式不是很标准,节点里面的内容不一样。解析这种xml需要首先确定节点到底有多少中结构,从你贴出来的xml看来,只有两中结构,一种是下面没有子节点,一种是有子节点。这时候使用程序去解析,必须做判断。当没有子节点的时候如何解析,有子节点的时候怎么去解析,针对两中结构分别做出不同的解析处理。

lingfeiwen
lingfeiwen DOM4J只是提供了解析操作的API给我们用,但是具体的解析逻辑还是要我们自己去写啊。你解析到<C N="TASK_TAIL">要判断有没有子节点,有子节点应该取子节点<DBSET RESULT="2">再问有没有子节点,一直这样递归下去。没子节点就返回节点的值
大约 3 年之前 回复
tzizi5566
tzizi5566 问题就出在有子节点的地方不知道dom4j怎么解析下去了。。
大约 3 年之前 回复
java_zc
java_zc   2015.07.13 14:54

什么意思?只能解析到0这一行

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
使用dom4j解析XML
使用dom4j解析XML使用dom4j解析XML使用dom4j解析XML使用dom4j解析XML使用dom4j解析XML使用dom4j解析XML使用dom4j解析XML使用dom4j解析XML使用dom4j解析XML使用dom4j解析XML使用dom4j解析XML
使用Dom4j来解析xml格式字符串
如何请xml格式的字符串(String)进去读取遍历,先将String转换成dom 然后对dom进行遍历。
使用 dom4j 解析 XML
使用 dom4j 解析 XML dom4j 解析 XML dom4j解析xml
使用dom4j解析器解析xml文件
解析xml文件目前用得最多的就是Dom4j解析器,被很多企业认可,在这之前还有w3c发布的dom解析器,但后来逐渐被弃用了,Dmo4j解析器使用起来更简单,逻辑更清晰,备受开发者喜爱。 Dom4j解析器开始解析前都将文件加载到内存中,所以就出现了“读快写慢”的现象,但并没有影响它受欢迎的程度。如果xml文件过于庞大,就要考虑使用SAX解析了,因为SAX是逐行解析,并不需要等待加载完成就可以马上解
Android使用Dom4j解析xml,并存入自定义实体
说到解析xml,相信大家都知道Android中的三中解析方式,这里就不在多做介绍了,说一下最近刚刚用的dom4j吧,dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件。   使用Dom4j开发,需下载dom4j相应的jar文件
使用dom4j解析xml标签,将标签属性与文本内容添加进集合
studentInfo.xml 崔卫兵 PC学院 62354666 男,1982年生,硕士,现就读于北京邮电大学 张洪泽 PC学院 62358888 男,1987年生,硕士,现就读于中国农业大学 映射Student..java public class Student { private String id; private
JAVA 使用Dom4j 解析XML
解析XML的方式有很多,本文介绍使用dom4j解析xml文件
使用Dom4j解析XML
dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它.        对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在那个方面都是非常出色的。如今你可以看到越来越多的Ja
使用Dom4j解析复杂的XML文件
使用Dom4j解析复杂的XML文件,简单的xml文件一个标签对,而复杂的xml文件标签对中还有自己的属性,那么这样的xml文件怎么解析呢?看了我的例子就知道了......
Dom4j循环读取xml节点
进期在做数据处理,遇到使用Dom4j解析文件,记录demo备用。需求:循环出同一父节点下多个相同字节点的数据,然后把这些数据按照顺序重新生成新的放入到新的节点名不同的xml内。准备:dom4j-1.6.1.jar、原始xml文件&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&amp;gt; &amp;lt;book&amp;gt; &amp;lt;edition&amp;gt;1.0&amp;lt;/e...