java基础篇---XML解析(二)
XML解析之最流行的方式:DOM4J
dom4j是使用java语言编写的,用于读,写,操作XML的一套组件
dom4j是一个开源的java组件,可从http://sourceforge.net/projects/dom4j/files/下载。其解压后有一个dom4j-1.6.1.jar文件,这个就是需要引入的包,其dom4j的所有的接口都在org.dom4j包中定义,主要接口如下:
XML写入文件:DOM4JWriter.java
package org.lxh.xml.dom4j ; import java.io.* ; import org.dom4j.* ; import org.dom4j.io.* ; public class DOM4JWriter { public static void main(String args[]) throws Exception { Document doc = DocumentHelper.createDocument() ; Element addresslist = doc.addElement("addresslist") ; // 现在定义一个根节点 Element linkman = addresslist.addElement("linkman") ; Element name = linkman.addElement("name") ; Element email = linkman.addElement("email") ; name.setText("偶my耶") ; email.setText("email") ; OutputFormat format = OutputFormat.createPrettyPrint() ; format.setEncoding("UTF_8") ; XMLWriter writer = new XMLWriter(new FileOutputStream(new File("e:" + File.separator + "output.xml")),format) ; writer.write(doc) ; // 进行输出 writer.close() ; } }
dom4j读取文件DOM4JReader.java
package org.lxh.xml.dom4j ; import java.io.* ; import java.util.* ; import org.dom4j.* ; import org.dom4j.io.* ; public class DOM4JReader { public static void main(String args[]) throws Exception { File file = new File("d:" + File.separator + "output.xml") ; SAXReader reader = new SAXReader() ; Document doc = reader.read(file) ; Element root = doc.getRootElement() ; Iterator iter = root.elementIterator() ; while(iter.hasNext()){ Element linkman = (Element) iter.next() ; System.out.println("姓名:" + linkman.elementText("name")) ; System.out.println("emeil:" + linkman.elementText("email")) ; } } }
输出结果:
从程序中可以清楚的发现,DOM4J本身是需要使用SAX建立解析器然后通过文档找到根节点,在通过根节点找到每一个节点的内容。
博客地址: | http://www.cnblogs.com/oumyye/ |
博客版权: | 本文以学习、研究和分享为主,欢迎转载,转载请务必注明出处,谢谢合作。 如果文中有不妥或者错误的地方请指出。如果觉得本文对你有所帮助不如【推荐】一下!如果你有更好的建议,不如留言一起讨论,共同进步! |