XML使用DOM4J方式读写
程序员文章站
2022-05-29 20:22:35
...
1. XML使用DOM4J方式读写
DOM4J官方网站:http://www.dom4j.org/
1.1 XML使用DOM4J方式生成XML文件
1.2 XML使用DOM4J方式读取XML文件
DOM4J官方网站:http://www.dom4j.org/
dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章,对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在哪个方面都是非常出色的。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这是必须使用的jar包,Hibernate用它来读写配置文件。
1.1 XML使用DOM4J方式生成XML文件
引入dom4j 新建Folder,导入dom4j所用的jar包,右键 --> Build Path --> Add To Build Path dom4j-1.6.1.jar
package com.andrew.xml; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.UnsupportedEncodingException; import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.OutputFormat; import org.dom4j.io.XMLWriter; public class DOM4J01 { public static void main(String[] args) { Document document = DocumentHelper.createDocument(); Element studentElement = document.addElement("student"); studentElement.addAttribute("id", "001"); studentElement.addAttribute("aa", "xx"); Element name = studentElement.addElement("name"); name.setText("张三"); Element sex = studentElement.addElement("sex"); sex.setText("男"); Element age = studentElement.addElement("age"); age.setText("20"); OutputFormat format = OutputFormat.createPrettyPrint(); format.setEncoding("UTF-8"); try { XMLWriter writer = new XMLWriter(new FileOutputStream("src/studentDOM4JOut.xml"), format); writer.write(document); writer.close(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } 运行结果: 在src在生成studentDOM4JOut.xml <?xml version="1.0" encoding="UTF-8"?> <student id="001" aa="xx"> <name>张三</name> <sex>男</sex> <age>20</age> </student>
1.2 XML使用DOM4J方式读取XML文件
<?xml version="1.0" encoding="UTF-8"?> <students> <student id="001"> <name>张三</name> <sex>男</sex> <age>20</age> </student> <student id="002"> <name>李四</name> <sex>女</sex> <age>21</age> </student> </students>
package com.andrew.xml; import java.util.Iterator; import org.dom4j.Document; import org.dom4j.Element; import org.dom4j.io.SAXReader; public class DOM4J02 { public static void main(String[] args) throws Exception { SAXReader saxReader = new SAXReader(); Document document = saxReader.read("src/studentsSax.xml"); Element rootElement = document.getRootElement(); Iterator iter = rootElement.elementIterator(); while (iter.hasNext()) { Element studentElement = (Element) iter.next(); System.out.println("学号:" + studentElement.attributeValue("id")); System.out.println("姓名:" + studentElement.elementText("name")); System.out.println("性别:" + studentElement.elementText("sex")); System.out.println("年龄:" + studentElement.elementText("age")); System.out.println("========="); } } } 运行结果: 学号:001 姓名:张三 性别:男 年龄:20 ========= 学号:002 姓名:李四 性别:女 年龄:21 =========
上一篇: Map To Bean
下一篇: 取文件分为多个文件
推荐阅读
-
java操作(DOM、SAX、JDOM、DOM4J)xml方式的四种比较与详解
-
Android编程使用pull方式解析xml格式文件的方法详解
-
php 使用expat方式解析xml文件操作示例
-
Spring实战之使用XML方式管理声明式事务操作示例
-
java使用dom4j生成与解析xml文档的方法示例
-
java xml解析方式(DOM、SAX、JDOM、DOM4J)
-
Spring Boot入门(七):使用MyBatis访问MySql数据库(xml方式)
-
使用dom4j写xml文件——源码
-
java基础 xml 使用dom4j解析 xml文件 servlet根据pattern 找到class
-
java操作(DOM、SAX、JDOM、DOM4J)xml方式的四种比较与详解