小编chu*_*ghd的帖子

如何仅使用ELEMENT_NODE类型获取子节点

我正在使用java DOM解析xml文档,我需要让每个节点都做一些事情.

我有这个代码:

public void analyze_file(Node node){
        if(node.getNodeType() != Node.DOCUMENT_NODE){
            //do something
        }
        NodeList list = node.getChildNodes();
        for(int i=0; i<list.getLength(); i++){
            if(list.item(i).getNodeType() == Node.ELEMENT_NODE){
                analyze_file(list.item(i));
            }
        }
}
Run Code Online (Sandbox Code Playgroud)

问题是,我的xml文件非常大(> 30000行),上面的代码需要太多时间来检查节点是否属于ELEMENT_NODE类型.我看到如果程序在到达最后一个ELEMENT_NODE节点后停止,则执行时间会非常短.

有没有办法获得所有类型ELEMENT_NODE只有的子节点?

例如: NodeList list = node.getElementChildNodes();

谢谢你的帮助!

java xml dom

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

dom ×1

java ×1

xml ×1