Java读取、创建xml(通过dom方式)
2014-05-16 23:02
405 查看
http://www.cnblogs.com/wangchenyang/archive/2011/08/23/2150530.html
创建一个接口
XmlInterface.java
接口实现
XmlImpl.java
测试
?
结果
生成xml
读取xml
?
创建一个接口
XmlInterface.java
/** * 建立XML文档 * @param fileName 文件全路径名称 */ public void createXml(String fileName); /** * 解析XML文档 * @param fileName 文件全路径名称 */ public void parserXml(String fileName); }
接口实现
XmlImpl.java
package com.test.xml; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.PrintWriter; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import javax.xml.transform.OutputKeys; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerConfigurationException; import javax.xml.transform.TransformerException; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; public class XmlImpl implements XmlInterface{ private Document document; public void init() { try { DocumentBuilderFactory factory = DocumentBuilderFactory .newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); this.document = builder.newDocument(); } catch (ParserConfigurationException e) { System.out.println(e.getMessage()); } } public void createXml(String fileName) { Element root = this.document.createElement("scores"); this.document.appendChild(root); Element employee = this.document.createElement("employee"); Element name = this.document.createElement("name"); name.appendChild(this.document.createTextNode("wangchenyang")); employee.appendChild(name); Element sex = this.document.createElement("sex"); sex.appendChild(this.document.createTextNode("m")); employee.appendChild(sex); Element age = this.document.createElement("age"); age.appendChild(this.document.createTextNode("26")); employee.appendChild(age); root.appendChild(employee); TransformerFactory tf = TransformerFactory.newInstance(); try { Transformer transformer = tf.newTransformer(); DOMSource source = new DOMSource(document); transformer.setOutputProperty(OutputKeys.ENCODING, "gb2312"); transformer.setOutputProperty(OutputKeys.INDENT, "yes"); PrintWriter pw = new PrintWriter(new FileOutputStream(fileName)); StreamResult result = new StreamResult(pw); transformer.transform(source, result); System.out.println("生成XML文件成功!"); } catch (TransformerConfigurationException e) { System.out.println(e.getMessage()); } catch (IllegalArgumentException e) { System.out.println(e.getMessage()); } catch (FileNotFoundException e) { System.out.println(e.getMessage()); } catch (TransformerException e) { System.out.println(e.getMessage()); } } public void parserXml(String fileName) { try { DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); Document document = db.parse(fileName); NodeList employees = document.getChildNodes(); for (int i = 0; i < employees.getLength(); i++) { Node employee = employees.item(i); NodeList employeeInfo = employee.getChildNodes(); for (int j = 0; j < employeeInfo.getLength(); j++) { Node node = employeeInfo.item(j); NodeList employeeMeta = node.getChildNodes(); for (int k = 0; k < employeeMeta.getLength(); k++) { System.out.println(employeeMeta.item(k).getNodeName() + ":" + employeeMeta.item(k).getTextContent()); } } } System.out.println("解析完毕"); } catch (FileNotFoundException e) { System.out.println(e.getMessage()); } catch (ParserConfigurationException e) { System.out.println(e.getMessage()); } catch (SAXException e) { System.out.println(e.getMessage()); } catch (IOException e) { System.out.println(e.getMessage()); } } }
测试
?
生成xml
<?xml version="1.0" encoding="GB2312"?> <scores> <employee> <name>wangchenyang</name> <sex>m</sex> <age>26</age> </employee> </scores>
读取xml
?
相关文章推荐
- 07.Java读取、创建xml(通过dom方式)
- Java读取、创建xml(通过dom方式)文档版
- Java读取、创建xml(通过dom方式)
- Java读取、创建xml(通过dom方式)
- Java读取、创建xml(通过dom方式)
- Java读取、创建xml(通过dom方式)
- Java读取、创建xml(通过dom方式)
- Java读取、创建xml(通过dom方式)
- java读取、创建xml(通过dom方式)
- Java读取、创建xml(通过dom方式)
- Java 利用dom方式读取、创建xml详解及实例代码
- java29.XML操作------使用java DOM方式创建XML数据
- Java眼中的XML--文件读取--1 应用DOM方式解析XML
- PHP 通过DOM方式创建一个book.xml文件
- php4/5使用Dom方式读取和解析和创建XML简单教程
- Java中使用DOM方式解析和创建XML文档、及dom4j使用简介
- Java创建XML的DOM方式
- java--通过DOM方式创建xml文件
- java通过dom创建和解析xml
- java--通过DOM方式对xml文件进行读取的简单实例