当前位置: 代码迷 >> J2EE >> 懂XML,请进.解决方法
  详细解决方案

懂XML,请进.解决方法

热度:652   发布时间:2016-04-22 02:30:01.0
懂XML,请进......
下面XML该如何解析:
<?xml version='1.0' encoding='UTF-8'?>
<statType>
<time value=”2011-10-02 21:07:20” />
<name>
<edition value=”222” />
<defaultAD>
  <property name=”id” value=”1” />
<property name=”age” value=”2” />
<property name=”scott” value=”3” />
<property name=”sex” value=”4” />
</defaultAD>
<defaultAD>
<property name=”id” value=”1” />
<property name=”age” value=”2” />
<property name=”scott” value=”3” />
<property name=”sex” value=”4” />
</defaultAD>
<defaultAD>
<property name=”id” value=”1” />
<property name=”age” value=”2” />
<property name=”scott” value=”3” />
<property name=”sex” value=”4” />
</defaultAD>
</name>
<names>
<edition value=”333” />
<are>
<property name=”id” value=”1”/>
<property name=”age” value=”2”/>
<property name=”scott” value=”3”/>
<property name=”sex” value=”4”/>
</are>
<are>
<property name=”id” value=”1”/>
<property name=”age” value=”2”/>
<property name=”scott” value=”3”/>
<property name=”sex” value=”4”/>
</are>
</names>
</statType> 


------解决方案--------------------
使用xpath:
Java code
        FileReader reader = new FileReader("/tmp/stattype.xml");        InputSource input = new InputSource(reader);        XPathFactory factory = XPathFactory.newInstance();        XPath xpath = factory.newXPath();        NodeList list = (NodeList)xpath.evaluate("//property",input,XPathConstants.NODESET);        for(int i = 0; i < list.getLength(); i++){            Node node = list.item(i);            System.out.printf("name:%s value:%s%n",                              (String)xpath.evaluate("@name",node,XPathConstants.STRING),                              (String)xpath.evaluate("@value",node,XPathConstants.STRING));        }
------解决方案--------------------
探讨

5L 如果不使用xpath,而是用dom4J该如何解析呢? 也请教大家
  相关解决方案