当前位置:首页 > XML基础教程2版第第4章(DOM解析器)代码
第4章 DOM解析器
4.1 DOM解析器 例子1
example4_1.xml
<姓名>张三姓名> <姓名> 李四
<奖励>一等奖学金奖励> 姓名> 学生名单>
JAXPOne.java
import org.w3c.dom.*; import javax.xml.parsers.*; import java.io.*; public class JAXPOne{
public static void main(String args[]){ try { DocumentBuilderFactory factory= DocumentBuilderFactory. newInstance();
DocumentBuilder domPaser=factory.newDocumentBuilder(); Document document=domPaser.parse(new File(\ Element root=document.getDocumentElement(); String rootName=root.getNodeName();
System.out.println(\文件根节点的名字:\ NodeList nodelist=root.getElementsByTagName(\姓名\ int size=nodelist.getLength(); for(int k=0;k Node node=nodelist.item(k); String name=node.getNodeName(); String content=node.getTextContent(); 63 System.out.print(name); System.out.println(\ } } catch(Exception e){ System.out.println(e); } } } 4.2 节点的类型 例子2 example4_2.xml <雇员> <姓名> 张三姓名> <年龄> 25岁年龄> <工资> 3190元/月工资> 雇员> <雇员> <姓名> 李四姓名> <年龄> 35岁年龄> <工资> 4320元/月工资> 雇员> 雇员列表> JAXPTwo.java import org.w3c.dom.*; import javax.xml.parsers.*; import java.io.*; public class JAXPTwo{ public static void main(String args[]){ try{ DocumentBuilderFactory factory= DocumentBuilderFactory.newInstance(); DocumentBuilder domParser= factory.newDocumentBuilder(); 64 Document document=domParser.parse(new File(\ NodeList nodeList=document.getChildNodes(); output(nodeList); } catch(Exception e){ System.out.println(e); } } public static void output(NodeList nodeList){ //output是一个递归方法 int size=nodeList.getLength(); for(int k=0;k if(node.getNodeType()==Node.TEXT_NODE){ Text textNode=(Text)node; String content=textNode.getWholeText(); System.out.print(content); } if(node.getNodeType()==Node.ELEMENT_NODE){ Element elementNode=(Element)node; String name=elementNode.getNodeName(); System.out.print(name+\ NodeList nodes=elementNode.getChildNodes(); output(nodes); //递归调用 } } } } 4.4 Element节点 例子3 example4_3.xml <商品名称 分类=\家电\ 电视机 商品名称> 65 <商品名称 分类=\服装\ 雅格尔西装 商品名称> <商品名称 分类=\食品\ 东北大米 商品名称> 商品列表> JAXPThree.java import org.w3c.dom.*; import javax.xml.parsers.*; import java.io.*; public class JAXPThree{ public static void main(String args[]){ try { DocumentBuilderFactory factory= DocumentBuilderFactory. newInstance(); DocumentBuilder domPaser=factory.newDocumentBuilder(); Document document=domPaser.parse(new File(\ Element root=document.getDocumentElement() ; NodeList nodeList=root.getChildNodes(); int size=nodeList.getLength(); for(int k=0;k if(node.getNodeType()==Node.ELEMENT_NODE){ Element elementNode=(Element)node; String name=elementNode.getNodeName(); String id=elementNode.getAttribute(\分类\ String content=elementNode.getTextContent(); System.out.print(name); System.out.print(\ System.out.println(\:\ } } } catch(Exception e){} } } 66
共分享92篇相关文档