怎么实现xml解析元素以Jtree的形式显示!谢谢了

解决方案 »

  1.   

    Jtree实现,有想法,帖子顶上去。
      

  2.   

    主要是xml文件解析后如何循环遍历,用什么方法比较好!
      

  3.   

    没有人回答,我只好自己写个循环把xml元素循环出来了!import java.io.File;
    import java.util.Iterator;import org.dom4j.*;
    import org.dom4j.io.SAXReader;public class XmlReadTest{
    public static void main(String[] args) throws Exception{
    File filename=new File("E:/tmp/2.xml");
    SAXReader reader = new SAXReader();
    Document document = reader.read(filename);
    Element root = document.getRootElement();
    for ( Iterator i = root.elementIterator(); i.hasNext(); ) {
           Element element = (Element) i.next();
           for(Iterator j=element.elementIterator();j.hasNext();){
            Element elements = (Element)j.next();
            for(Iterator k = elements.elementIterator();k.hasNext();){
            Element elementt = (Element)k.next();         
            System.out.print("    "+elementt.getName()+" ");
            Iterator kk = elementt.attributeIterator();
            getAttributes(kk);
            System.out.println();
            }      
            System.out.print("  "+elements.getName()+" ");
            Iterator jj=elements.attributeIterator();
            getAttributes(jj);
            System.out.println();
           }
           System.out.print(element.getName()+" ");
           Iterator ii=element.attributeIterator();
           getAttributes(ii);
           System.out.println();
        }
    }
    public static void getAttributes(Iterator e){
    while(e.hasNext()){
    Node no = (Node)e.next();
    System.out.print(no.getName()+"="+no.getStringValue()+" ");
    }
    }

    }
    我的xml文件就只三层,如果再多再加层循环!
      

  4.   

    1)DOM4J 性能最好,连 Sun 的 JAXM 也在用DOM4J.目前许多开源项目中大量采用
    DOM4J,例如大名鼎鼎的Hibernate 也用 DOM4J 来读取 XML 配置文件。如果不考
    虑可移植性,那就采用DOM4J.  
     
    2)JDOM 和 DOM 在性能测试时表现不佳,在测试10M 文档时内存溢出。在小文档
    情况下还值得考虑使用DOM 和 JDOM.虽然 JDOM 的开发者已经说明他们期望在正
    式发行版前专注性能问题,但是从性能观点来看,它确实没有值得推荐之处。另
    外,DOM 仍是一个非常好的选择。DOM 实现广泛应用于多种编程语言。它还是许
    多其它与XML 相关的标准的基础,因为它正式获得W3C 推荐(与基于非标准的
    Java 模型相对),所以在某些类型的项目中可能也需要它(如在JavaScript 中
    使用DOM)。  
     
    3)SAX 表现较好,这要依赖于它特定的解析方式-事件驱动。一个SAX 检测即
    将到来的XML 流,但并没有载入到内存(当然当XML 流被读入时,会有部分文档
    暂时隐藏在内存中)。  
      

  5.   

    没写过java的,写过c#的xml转成TreeView
      

  6.   

    http://www.infosecurity.org.cn/content/appsec/xmlbasic/xml_jtree_if_chan.htm,看看吧