Java使用DOM4j实现读写XML文件的属性和元素
更新时间:2018年12月17日 08:34:12 作者:程沐喆
这篇文章主要为大家详细介绍了Java使用DOM4j实现读写XML文件的属性和元素,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
DOM4可以读取和添加XML文件的属性或者元素
读取属性:
public static void ReadAttributes() throws DocumentException { File file = new File("D:\\cmz\\java\\XMLTest\\Customertest.xml"); SAXReader reader = new SAXReader(); Document doc = reader.read(file); Element root = doc.getRootElement(); try { for (Iterator iterator = root.elementIterator(); iterator.hasNext();) { Element element = (Element) iterator.next(); String CustomerID = element.attributeValue("CustomerID"); System.out.println("CustomerID = " + CustomerID); String CompanyName = element.attributeValue("CompanyName"); System.out.println("CompanyName = " + CompanyName); System.out.println("ContactName = " + element.attributeValue("ContactName")); System.out.println("ContactTitle = " + element.attributeValue("ContactTitle")); System.out.println("Address = " + element.attributeValue("Address")); System.out.println("City = " + element.attributeValue("Cit阿y")); System.out.println("PostalCode = " + element.attributeValue("PostalCode")); System.out.println("Country = " + element.attributeValue("Country")); System.out .println("Phone = " + element.attributeValue("Phone")); System.out.println("Fax = " + element.attributeValue("Fax")); System.out .println("--------------------------------------------------------\t"); } } catch (Exception e) { // TODO: handle exception } }
读取元素:
public static void ReadInnerTest() throws DocumentException { File file = new File("D:\\cmz\\java\\XMLTest\\Customer1.xml"); SAXReader reader = new SAXReader(); Document doc = reader.read(file); Element root = doc.getRootElement(); try { for (Iterator iterator = root.elementIterator(); iterator.hasNext();) { Element type = (Element) iterator.next(); System.out.println(type.elementText("CustomerID")); System.out.println(type.elementText("CompanyName")); System.out.println(type.elementText("ContactName")); System.out.println(type.elementText("ContactTitle")); System.out.println(type.elementText("Address")); System.out.println(type.elementText("City")); System.out.println(type.elementText("PostalCode")); System.out.println(type.elementText("Country")); System.out.println(type.elementText("Phone")); System.out.println(type.elementText("Fax")); System.out.println("---------------------------------\t"); } } catch (Exception e) { // TODO: handle exception } }
写入属性:
public static void WriteAttributes() { Document doc = DocumentHelper.createDocument(); Element ele = doc.addElement("table"); for (int i = 1; i < 5; i++) { Element Customers = ele.addElement("Customers"); Customers.addAttribute("CustomerID", "ALFKI" + i); Customers.addAttribute("CompanyName", "Alfreds Futterkiste" + i); Customers.addAttribute("ContactName", "Maria Anders" + i); Customers.addAttribute("ContactTitle", "Sales Representative" + i); Customers.addAttribute("Address", "Obere Str. 57"); Customers.addAttribute("City", "beijin"); Customers.addAttribute("PostalCode", "12209"); Customers.addAttribute("Country", "Germany"); Customers.addAttribute("Phone", "030-0074321"); Customers.addAttribute("Fax", "030-0076545"); try { XMLWriter writer = new XMLWriter(new FileWriter(new File( "Customertest.xml"))); writer.write(doc); writer.close(); } catch (Exception e) { // TODO: handle exception } } }
写出元素:
public static void writeInnerTest(){ Document doc = DocumentHelper.createDocument(); Element ele = doc.addElement("table"); for (int i = 1; i < 5; i++) { Element Customers = ele.addElement("row"); Element CustomerID = ele.addElement("CustomerID"); CustomerID.setText("ALFKI" + i); Element CompanyName = ele.addElement("CompanyName"); CompanyName.setText("Alfreds Futterkiste" + i); Element ContactName = ele.addElement("ContactName"); ContactName.setText("Maria Anders" + i); Element ContactTitle = ele.addElement("ContactTitle"); ContactTitle.setText("Sales Representative" + i); Element Address = ele.addElement("Address"); Address.setText("Obere Str. 57"); Element City = ele.addElement("City"); City.setText("beijin"); Element PostalCode = ele.addElement("PostalCode"); PostalCode.setText("12209"); Element Country = ele.addElement("Country"); Country.setText("Germany"); Element Phone = ele.addElement("Phone"); Phone.setText("030-0074321"); Element Fax = ele.addElement("Fax"); Fax.setText("030-0076545"); } try { XMLWriter writer = new XMLWriter(new FileWriter(new File( "Customertest2.xml"))); writer.write(doc); writer.close(); } catch (Exception e) { // TODO: handle exception } }
可以修改属性的文本内容:
public static void ReadUpdateattribute() throws DocumentException{ File file = new File("D:\\cmz\\java\\XMLTest\\Customertest.xml"); SAXReader reader = new SAXReader(); Document doc = reader.read(file); Element root = doc.getRootElement(); try { for (Iterator iterator = root.elementIterator("Customers"); iterator.hasNext();) { Element element = (Element) iterator.next(); String name = "ALFKI1"; if (name.equals(element.attributeValue("CustomerID")) ) { Attribute attr = element.attribute("CustomerID"); attr.setValue("234"); Element ContactName = element.addElement("23424"); ContactName.setText("676767" ); } } XMLWriter writer = new XMLWriter(new FileOutputStream(file)); writer.write(doc); ReadAttributes(); } catch (Exception e) { // TODO: handle exception } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
myeclipse安装Spring Tool Suite(STS)插件的方法步骤
这篇文章主要介绍了myeclipse安装Spring Tool Suite(STS)插件的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-08-08Spring Boot中集成各种日志框架Logback、Log4j2和Java Util
这篇文章主要介绍了Spring Boot中集成各种日志框架Logback、Log4j2和Java Util Logging,通过实例代码介绍了集成Logback、Log4j2和Java Util Logging的基本步骤,你可以根据自己的需求进行配置和扩展,以满足更复杂的日志需求,需要的朋友可以参考下2023-11-11java 利用反射机制,获取实体所有属性和方法,并对属性赋值
这篇文章主要介绍了 java 利用反射机制,获取实体所有属性和方法,并对属性赋值的相关资料,需要的朋友可以参考下2017-01-01
最新评论