JavaWeb - XML解析 - DOM

来源:互联网 发布:手机淘宝差评怎么写 编辑:程序博客网 时间:2024/05/21 07:01

DOM 操作

javaimport java.io.* ;import org.w3c.dom.* ;import javax.xml.parsers.* ;public class demo {public static void main(String args []){// 取得DocumentBuilderFactory类的对象DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance() ;// 取得DocumentBuilder类的对象try{DocumentBuilder build = factory.newDocumentBuilder() ;Document doc = build.parse(new File("E:" + File.separator + "02.xml")) ;// 得到所有的linkman节点NodeList nl = doc.getElementsByTagName("linkman") ;for(int x=0; x<nl.getLength(); x++){Element e = (Element)nl.item(x) ;// 取出每一个元素System.out.println("编号:" + e.getElementsByTagName("id").item(0).getFirstChild().getNodeValue()) ;System.out.println("姓名:" + e.getElementsByTagName("name").item(0).getFirstChild().getNodeValue()) ;System.out.println("邮箱:" + e.getElementsByTagName("email").item(0).getFirstChild().getNodeValue()) ;System.out.println() ;}} catch(Exception e) {;}}}
xml<?xml version="1.0" encoding="GBK" standalone="no" ?><addresslist><linkman><id>001</id><name>W_Jp</name><email>271953489@qq.com</email></linkman><linkman><id>002</id><name>W_Cc</name><email>109604484@qq.com</email></linkman><linkman><id>003</id><name>C_Jm</name><email>879451036@qq.com</email></linkman></addresslist>

DOM文件生成

未运行import java.io.* ;import org.w3c.dom.* ;import javax.xml.parsers.* ;import javax.xml.transform.* ;import javax.xml.transform.dom.* ;import javax.xml.transform.dom.stream.* ;public class demo {public static void main(String args []){// 取得DocumentBuilderFactory类的对象DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance() ;// 取得DocumentBuilder类的对象DocumentBuilder build = factory.newDocumentBuilder() ;Document doc = build.newDocument() ;// 创建一个新的XML文档Element addresslist = doc.createElement("addresslist") ;Element linkman = doc.createElement("linkman") ;Element id = doc.createElement("id") ;Element name = doc.createElement("name") ;Element email = doc.createElement("email") ;// 设置节点内容id.appendChild(doc.createTextNode("001")) ;name.appendChild(doc.createTextNode("wjp")) ;email.appendChild(doc.createTextNode("271953489@qq.com")) ;// 设置各个节点的关系linkman.appendChild(id) ;// id是linkman的子节点linkman.appendChild(name) ;// name是linkman的子节点linkman.appendChild(email) ;// email是linkman的子节点addresslist.appendChild(linkman) ;//doc.appendChild(addresslist) ;TransformerFactory tf = TransformerFactory.newInstance() ;Transformer t = tf.newTransFormer() ;t.setOutputProperty(OutputKeys.ENCODING, "utf-8") ;// 处理中文DOMSource source = new DOMSource(doc) ;// 准备输出文档StreamResult result = new StreamResult(new File("e:" + File.separator + "output.xml")) ;t.transform(source, result) ;}}

 

0 0
原创粉丝点击