Java使用DOM4j实现读写XML文件的属性和元素

网友投稿 397 2023-01-17


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(typehttp://.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();

} http://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(http://);

} catch (Exceptihttp://on e) {

// TODO: handle exception

}

}


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:轻量级接口文档管理工具(编写接口文档的工具)
下一篇:spring boot+jwt实现api的token认证详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~