java dom4j操作xml_java使用DOM4J对XML文件进行增删改查操作

java使用DOM4J对XML文件进行增删改查操作

发布于 2020-3-16|

复制链接

摘记: 本文实例为大家分享了java使用DOM4J对XML文件进行增删改查操作的具体代码,供大家参考,具体内容如下源代码:

DOM4j.java

```java

package com.zc.homeWork19;

import java.io.FileWrite ..

本文实例为大家分享了java使用DOM4J对XML文件进行增删改查操作的具体代码,供大家参考,具体内容如下源代码: DOM4j.java

```java

package com.zc.homeWork19;

import java.io.FileWriter;

import java.util.ArrayList;

import java.util.Iterator;

import java.util.List;

import org.dom4j.Document;

import org.dom4j.Element;

import org.dom4j.io.SAXReader;

import org.dom4j.io.XMLWriter;

import com.zc.homeWork19.Book;

public class DOM4j {

public static void main(String args[]) throws Exception {

/**

* 第一步,得到document对象。

*/

Document document = getDocument();

/**

* 第二步,修改得到的document对象

*/

/**

* 首先,读取功能

*/

List books = readAllElementsFromXMLDocument(document);

traverseBooks(books);

/**

* 其次,修改功能 修改内容:将id为b002的元素的title改为Java Core,Price改为100.01

*/

ModifyInformationOfXMLDocument(document);

/**

* 再者:实现删除功能 删除内容:删除掉id为book1的元素内容。

*/

deleteInformationOfXMLDocument(document);

/**

* 最后:实现添加i新元素功能 添加内容:id为book3,title内容为:凤姐玉照,price内容为10000.00

*/

addNewBookToXMLDocument(document);

/**

* 第三步:将得到的document对象持久化保存到硬盘(XML)

*/

writeToNewXMLDocument(document);

}

/**

* 实现了添加新节点:book的功能

*

* @param document

*/

private static void addNewBookToXMLDocument(Document document) {

Element root = document.getRootElement();

Element newBook = root.addElement("book");

newBook.addAttribute("id", "book3");

Element title = newBook.addElement("title");

title.setText("凤姐玉照");

Element price = newBook.addElement("price");

price.setText("10000.01");

}

/**

* 该方法实现了使用dom4j的删除元素的功能

*

* @param document

*/

private static void deleteInformationOfXMLDocument(Document document) {

Element root = document.getRootElement();

for (Iterator it = root.elementIterator(); it.hasNext();) {

Element book = (Element) it.next();

String id = book.attributeValue("id");

if ("book1".equals(id)) {

Element parent = book.getParent();

parent.remove(book);

}

}

}

/**

* 该方法的作用是修改document中的内容 将id为b002的元素的title改为Java Core,Price改为100.01

*

* @param document

*/

private static void ModifyInformationOfXMLDocument(Document document) {

Element root = document.getRootElement();

List books = root.elements();

for (int i = 0; i books) {

for (Iterator iterator = books.iterator(); iterator.hasNext();) {

Book book = iterator.next();

System.out.println(book);

}

}

/**

* 该方法实现了对xml文档的读取功能

*

* @param document

* @return

*/

private static List readAllElementsFromXMLDocument(Document document) {

List books = new ArrayList();

Element root = document.getRootElement();

List list = root.elements();

for (int i = 0; i Book.java

```java

package com.zc.homeWork19;

public class Book {

public String title;

public double price;

public String id;

public String getTitle() {

return title;

}

public void setTitle(String title) {

this.title = title;

}

public double getPrice() {

return price;

}

public void setPrice(double price) {

this.price = price;

}

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

public String toString() {

return "图书ISBN为:" + id + " 书名为:" + title + " 价格为:" + price;

}

}

```

book.xml

```xml

JAVA编程思想

80.00

JAVA 编程理论

100.00

```

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值