使用DOM4j解析xml文件
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Xml文件:
JAVA文件:
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
/**
*DOM4j对xml文件的操作
*操作DOM4j的时候注意要导入3个jar包,否则会报异常
*dom4j-1.6.1.jar
*jaxen-1.1-beta-6.jar
*saxpath.jar
**/
public class ReaderDom4j {
/**
*创建一个xml文件
**/
public static void createxml() {
//使用 DocumentHelper 类创建一个文档实例。DocumentHelper 是生成 XML 文档节点的 dom4j API 工厂类。
Document document = DocumentHelper.createDocument();
//使用 addElement() 方法创建根元素 student
Element booksElement = document.addElement("student");
booksElement.addComment("first xml");
//在 student 元素中使用 addElement() 方法增加 call 元素。
Element book1Elment = booksElement.addElement("call");
//在call元素里增加show属性,show属性的值是yes
book1Elment.addAttribute("show", "yes");
//在 call 元素中使用 addElement() 方法增加 name 元素。
Element book2Element = book1Elment.addElement("name");
//设置name标签的内容
book2Element.setText("zhangsan");
Element book3Element = book1Elment.addElement("English");
book3Element.setText("78");
Element book4Element = book1Elment.addElement("Chinese");
book4Element.setText("78");
Element book5Element = book1Elment.addElement("Japan");
book5Element.setText("98");
book1Elment = booksElement.addElement("call");
book1Elment.addAttribute("show", "yes");
book2Element = book1Elment.addElement("name");
book2Element.setText("wangwu");
book3Element = book1Elment.addElement("English");
book3Element.setText("77");
book4Element = book1Elment.addElement("Chinese");
book4Element.setText("68");
book5Element = book1Elment.addElement("Japan");
book5Element.setText("88");
try {
//格式化输出xml文件,兼容ie的格式化输出
OutputFormat format = OutputFormat.createPrettyPrint();
format.setEncoding("UTF-8");
//把xml文件从内存中写入文件
XMLWriter writer = new XMLWriter(new FileWriter("myxml.xml"), format);
writer.write(document);
writer.close();
} catch (IOException e) {