package jiexi; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org.w3c.dom.Node; import org.w3c.dom.NodeList; //JAXP DOM方式解析XML文档实例 public class JaxpCRUD { public static void main(String[] args) throws Exception { //1,得到解析器DocumentBuilder DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance(); DocumentBuilder db=dbf.newDocumentBuilder(); //2,得到代表整个xml文档的Document对象 Document document=db.parse("src/book.xml"); test1(document); } //1、得到具体节点的内容 public static void test1(Document document){//得到第二本书的售价 NodeList list=document.getElementsByTagName("售价"); int length=list.getLength();//获得元素节点的个数 System.out.println(length); Node node=list.item(1);//角标从0开始 System.out.println(node.getTextContent()); } //2、遍历所有元素节点 public static void test2(Node node){ //1,判断node是否是元素节点,如果是,打印该节点 if(node.getNodeType()==Node.ELEMENT_NODE ){//判断是否是元素节点 System.out.println(node.getNodeName()); } //2,判断是否有孩子节点 NodeList children=node.getChildNodes(); for(int i=0;i<children.getLength();i++){ Node n=children.item(i); test2(n);//3,递归调用 } } //3、修改某个元素节点的主题内容 //4、向指定元素节点中增加子元素节点 //5、向指定元素节点上增加同级元素节点 //6、删除指定元素节点 //7、操作XML文件属性 }
时间: 2024-10-12 22:16:58