使用Dom4j读取和写入xml文件
2018-02-07 17:29
483 查看
1.读取
package com.etoak.test; import java.io.File; import java.util.List; import org.dom4j.Attribute; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.SAXReader; public class ReadXml { public static void main(String[] args) { //使用dom4j读取已经存在的xml文件,如拆快递 try{ //1.拿取解析器Sample Api Xml SAXReader sax = new SAXReader(); //2.读取指定 的xml文档。将其封装在document对象中 Document doc = sax.read(new File("etoak1.xml")); //3.拿取根元素<students> Element root = doc.getRootElement(); //4.拿取所有的一级子元素,集合 List<Element> firstChild = root.elements(); //5.遍历一级子元素集合 for(Element firstEle:firstChild){ //拿取所有一级子元素名 System.out.println("一级子元素名字"+firstEle.getName()); //拿取一级子元素中的属性 List<Attribute> afirstEle = firstEle.attributes(); //遍历所有属性 for(Attribute attr:afirstEle){ System.out.println("拿取属性名是"+attr.getName()); System.out.println("拿取的属性值是"+attr.getValue()); } //拿取所有的二级子元素 List<Element> secondChild = firstEle.elements(); for(Element secondEle:secondChild){ System.out.println("第二级子元素是"+secondEle.getName()); System.out.println("第二级子元素嵌套的文本是"+secondEle.getText()); } } }catch(DocumentException ex){ ex.printStackTrace(); } } }2.写入
package com.etoak.test; import java.io.FileOutputStream; import java.io.OutputStream; import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; import org.dom4j.io.OutputFormat; import org.dom4j.io.XMLWriter; public class WriteXml { public static void main(String[] args) throws Exception{ //1.创建一个Document对象 Document doc = DocumentHelper.createDocument(); //2.创建根对象 Element root = doc.addElement("stuList"); //3.创建一个一级子元素 Element student = root.addElement("student"); //4.给一级子元素添加属性值 student.addAttribute("id", "et001"); student.addAttribute("name", "Tom"); //5.给一级子元素添加二级子元素 Element email = student.addElement("email"); email.setText("123@163.com"); Element phone = student.addElement("phone"); phone.setText("111"); //6.设置输出流来生成一个xml文件 OutputStream os = new FileOutputStream("etoak2.xml"); //Format格式输出格式刷 OutputFormat format = OutputFormat.createPrettyPrint(); //设置xml编码 format.setEncoding("utf-8"); //写:传递两个参数一个为输出流表示生成xml文件在哪里 //另一个参数表示设置xml的格式 XMLWriter xw = new XMLWriter(os,format); //将组合好的xml封装到已经创建好的document对象中,写出真实存在的xml文件中 xw.write(doc); //清空缓存关闭资源 xw.flush(); xw.close(); } }
相关文章推荐
- dom4j中使用SAXReader读取xml文件出现Premature end of file异常问题
- 使用DOM4j读取xml文件
- 使用 JDOM 读取和写入 XML 文件
- 读取、回收和重用:使用 Excel、XML 和 Java 技术轻松搞定报告使用 Java 和 XML 技术读取 Excel 文件并写入新文件(1)
- 使用DOM4J读取XML文件
- 使用dom4j读取xml配置文件
- 使用dom4j和jdom读取xml文件
- 使用dom4j读取xml文件初始化数据
- 从数据库中读取数据,并写入xml文件中(dom4j)
- 使用dom4j 读取XML文件
- 使用dom4j读取xml文件
- 使用XmlTextWriter与XmlTextReader访问创建和读取XML文件
- 使用Linq to Xml 读取配置文件
- 使用ASP读取XML文件
- dom4j实战(一)——使用dom4j从XML中读取数据源配置
- jdom 或 dom4j读取xml文件时如何让dtd验证使用本地dtd文件或者不生效
- 合理使用DataSet和DataGridView读取xml文件到DataGridView
- 使用XmlReader读取xml文件
- 使用Linq to Xml 读取配置文件
- 使用FileReader和FileWriter读取写入文件内容