xml 文件:
<?xml version="1.0" encoding="GBK"?>  
  
<members>    
  <menber>    
    <name>qiangshao</name>     
    <age>66</age>     
    <sex>男</sex>    
  </menber> 
</members>  注:XML 文件中我只写了部分成员。
相应的JAVA 源文件:
package www.metarnet.com;import org.dom4j.Document;
import java.util.StringTokenizer;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.xml.sax.SAXException;
import java.io.File;
import java.util.Iterator;
import java.util.List;
import java.util.ArrayList;
public class SAXReaderTest {
public static void main(String[] args)throws DocumentException{
SAXReader saxReader =new SAXReader();
Document doc =saxReader.read("./log/students.xml");
List xmlList =doc.selectNodes("//members/menber");
for(Object childNodes: xmlList){
System.out.println(childNodes);
}
}
}
问题:我现在想从member元素处开始遍历XML 文件,得到成员的相关属性。

解决方案 »

  1.   

    你已经获得了member元素的列表了
    List xmlList =doc.selectNodes("//members/menber");
    接下来遍历不就行了
      

  2.   

    我也就郁闷了,程序抛出错误,信息是:
    Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/JaxenException
    at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:230)
    at org.dom4j.tree.AbstractNode.createXPath(AbstractNode.java:207)
    at org.dom4j.tree.AbstractNode.selectNodes(AbstractNode.java:164)
    at www.metarnet.com.SAXReaderTest.main(SAXReaderTest.java:17)
    Caused by: java.lang.ClassNotFoundException: org.jaxen.JaxenException
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
    ... 4 more
      

  3.   


    呵呵,非常感谢你,果然是这个问题,但是我用myeclipse写程序的时候,并没有报错,只是运行的时候报上面的一个错误。