[xml] JAXPDom解析器

package com.cskaoyan.xmlparse;
 import javax.xml.parsers.DocumentBuilder;//获得文档实例
 import javax.xml.parsers.DocumentBuilderFactory;//获得解析器
 import javax.xml.parsers.ParserConfigurationException;
 import javax.xml.transform.Transformer;//处理转换指令
 import javax.xml.transform.TransformerFactory;//用于创建 Transformer 和 Templates 对象
 import javax.xml.transform.dom.DOMSource;//使用dom树
 import javax.xml.transform.stream.StreamResult;//为xml等文本格式标记

 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.Document;
  
 public class JaxpDomTest {

	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
		DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); //解析器
        DocumentBuilder db= dbf.newDocumentBuilder();//文档实例
        Document document=db.parse("src/books.xml");//放进内存
        
//      System.out.println(document.getElementsByTagName("price").item(0).getTextContent());
        	
       
//       Element bookElement= (Element)document.getElementsByTagName("book").item(1);//第二本书父节点
//                      element是xml中的类型之一,除了结点node就是element
//       Element disElement= document.createElement("discount");//创建新节点
//       disElement.setTextContent("19.9");
//       bookElement.appendChild(disElement);//添加新节点,但只在内存的dom树上
//       
//       TransformerFactory tsf =	TransformerFactory.newInstance();
//		 Transformer tsTransformer = tsf.newTransformer();
//		 tsTransformer.transform(new DOMSource(document), new StreamResult("src/books.xml"));//添加到文档中
		
         Element bookElement = (Element) document.getElementsByTagName("book").item(1);//可以去掉
	     Element disElement = (Element) document.getElementsByTagName("discount").item(0);//找到子节点	 
		 disElement.getParentNode().removeChild(disElement);//删除
	
	     TransformerFactory tsf = TransformerFactory.newInstance();
	     Transformer tsTransformer = tsf.newTransformer();
		 tsTransformer.transform(new DOMSource(document), new StreamResult("src/books.xml"));
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值