java xml流遍历,Java编写程序对XML进行遍历输出

Java编写程序对XML进行遍历输出

xml文档内容如下:

101

zk

1091380112

M

100

102

teacher

0673892

M

130

所需的java程序如下:

//引用包名这里省略

public class domTraverse {

public static void main(String args[]){

try{

//静态方法newInstance得到解析工厂实例

DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance();

//用解析工厂的newDocumentBuilder()方法得到解析对象

DocumentBuilder builder=factory.newDocumentBuilder();

Document document=builder.parse(new File(“Web/sourceXML.xml”));

//调用遍历节点方法,参数为根节点

nodeTranserse(document.getDocumentElement());//遍历xml根节点root

String root=document.getDocumentElement().getNodeName();//根节点名称

System.out.print(“”+root+”>”);//遍历完之后,结束根节点名称

//当初一直得不到根节点root的结束标签

}catch(Exception e){

System.out.println(e);

}

}

public static void nodeTranserse(Node node){

String rNodeName=node.getNodeName();//当前遍历元素名称

if(node.getNodeType()==Node.ELEMENT_NODE){ //为节点类型,输出节点名称

System.out.print(“”);

}

if(node.getNodeType()==Node.TEXT_NODE){ //文本类型,输出文本

System.out.print(((Text)node).getWholeText());

}

NodeList allNodes=node.getChildNodes();//获取所要遍历节点的子节点

int size=allNodes.getLength();

if(size>0){

for(int j=0;j

Node childNode=allNodes.item(j);

nodeTranserse(childNode);

if(childNode.getNodeType()==Node.ELEMENT_NODE){

//每遍历完一个标签,输出结束标签

System.out.print(“”+childNode.getNodeName()+”>”);

}

}

}

}//End of nodeTranserse

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值