Java学习之路――使用DOM解析XML文档(二)

2014-11-24 03:07:55 · 作者: · 浏览: 4
oot);

}

private static void parseElement(Element element){

String tagName = element.getNodeName();

NodeList children = element.getChildNodes();

System.out.print("<" + tagName);

//element 元素所构成的属性的NamedNodeMap对象,对其进行判断

NamedNodeMap map = element.getAttributes();

if(null != map){

for(int i = 0 ; i < map.getLength(); i++){

//获取元素的每一个属性

Attr attr = (Attr)map.item(i);

String attrName = attr.getName();

String attrValue = attr.getValue();

System.out.print(" " + attrName + "=\"" + attrValue + "\"" );

}

}

System.out.print(">");

for(int i = 0; i < children.getLength(); i++ ){

Node node = children.item(i);

Short nodeType = node.getNodeType();

//是元素类性,进行递归

if(nodeType == Node.ELEMENT_NODE){

parseElement((Element)node);

}

//是文本类性,打印出来

else if(nodeType ==Node.TEXT_NODE){

System.out.print(node.getNodeva lue());

}

//是注释,进行打印

else if(nodeType ==Node.COMMENT_NODE){

Comment comment = (Comment)node;

String data = comment.getData();

System.out.print("");

}

}

System.out.println("");

}

}

运行结果:

\


作者 liuchangqing123