原文链接:http://www.blogjava.net/liuyimx/articles/dom4j-1.html
1.新建一个class类,用来生成xml文件,并输出到本地磁盘,内容如下:
import java.io.FileWriter;
import java.io.IOException;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
public class createXml {
public static Document getDocument(){
Document document = DocumentHelper.createDocument();
//生成一个接点
Element root = document.addElement("root");
//生成root的一个接点
Element category = root.addElement("category");
//生产category的一个接点
Element id = category.addElement("id");
//生成id里面的参数值
id.addAttribute("name", "id");
//生成id里面的值
id.addText("1");
return document;
}
/**
* 写入xml文件地址
* @param document 组合好的xml document
* @param outFile 文件存放的地址
*/
public static void writeDocument(Document document, String outFile){
try{
//读取文件
FileWriter fileWriter = new FileWriter(outFile);
//设置文件编码
OutputFormat xmlFormat = new OutputFormat();
xmlFormat.setEncoding("UTF-8");
//创建写文件方法
XMLWriter xmlWriter = new XMLWriter(fileWriter,xmlFormat);
//写入文件
xmlWriter.write(document);
//关闭
xmlWriter.close();
}catch(IOException e){
System.out.println("文件没有找到");
e.printStackTrace();
}
}
public static void main(String[] args){
createXml.writeDocument(createXml.getDocument(), "f:\\a.xml");
}
}
右键执行以上代码,会在F盘下生成一个a.xml文件
如下图:
12373585720
2.新建一个类,用于解析和修改刚才生成的xml文件。
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
public class CatchXml {
public CatchXml(){
}
@SuppressWarnings("unchecked")
public void changeXml(File inputxml){
try {
SAXReader reader = new SAXReader();
Document doc = reader.read(inputxml);
List list = doc.selectNodes("//category");
Iterator iter = list.iterator();
while(iter.hasNext()){
Element element = (Element)iter.next();
element.addComment("it is a comment for liuyimx!");
Iterator iterator = element.elementIterator("id");
while(iterator.hasNext()){
Element IdElement = (Element)iterator.next();
if(IdElement.getText().equals("1")){
IdElement.setText("liuyi");
}
if(IdElement.attribute("name").getValue().equals("id")){
IdElement.attribute("name").setValue("001");
}
}
}
OutputFormat format = new OutputFormat(" ",true);
format.setEncoding("UTF-8");
XMLWriter writer = new XMLWriter(new FileWriter(inputxml));
writer.write(doc);
writer.close();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
catch (DocumentException e) {
e.printStackTrace();
}
}
public static void main(String args[]){
File file = new File("f:\\a.xml");
CatchXml cx = new CatchXml();
cx.changeXml(file);
}
}
右键执行,修改后a.xml如下:
12373675950
依赖jar包:
dom4j-1.6.1.jar
jaxen-1.1.1.jar
分享到:
相关推荐
在本文中,我们将学习如何使用 Dom4j 生成 XML 文档和解析 XML 文档。 生成 XML 文档 使用 Dom4j 生成 XML 文档非常简单。首先,我们需要创建一个 Document 对象,然后添加元素和属性。下面是一个生成 XML 文档的...
DOM4J解析XML文档: DOM4J通过构建DOM树(Document Object Model)来解析XML。DOM模型是一种将XML文档转换为内存中对象树的表示方式。在DOM4J中,我们可以使用`DocumentBuilderFactory`和`DocumentBuilder`来创建`...
在本文中,我们将深入探讨如何使用DOM4J来解析和操作XML文档。 首先,要使用DOM4J,你需要下载其库文件。官方站点位于http://www.dom4j.org,你可以在这里找到最新的DOM4J包,例如dom4j-1.6.1.zip。解压缩后,你会...
为了使用这个库,你需要将该jar包添加到项目的类路径中,然后就可以通过DOM4J提供的类和方法来解析和操作XML文件了。 总之,DOM4J是一个功能强大的XML处理库,无论是在小型项目还是大型系统中,都能发挥其优势,...
Dom4j 遍历解析 XML 是指使用 Dom4j 库来解析和遍历 XML 文档,提取其中的元素、属性和值。 在 Dom4j 中,遍历 XML 文档需要使用 SAXReader 对象来读取 XML 文件,并将其转换为 Document 对象。Document 对象是 Dom...
这篇博客()可能详细介绍了如何使用DOM4J来生成和解析XML文件,这对于处理XML文档的开发人员来说是非常有用的工具。 **1. 生成XML文件** 生成XML文件主要涉及以下步骤: - **创建Document对象**:DOM4J通过`...
Dom4J作为一款优秀的Java XML API,以其简洁、高效的特点,在生成、解析和操作XML文档方面表现突出。本文将深入探讨如何使用Dom4J库来创建XML文档,包括初始化文档、添加元素、设置属性、插入文本以及最终保存文档至...
- **数据交换**: 在不同的系统之间交换XML格式的数据,DOM4J可以轻松解析和生成XML文档。 - **配置文件解析**: 许多应用使用XML作为配置文件的格式,DOM4J可以方便地读取和更新这些配置信息。 - **Web服务**: 在SOAP...
解析XML文件后,DOM4J会构建一个`Document`对象树,你可以通过这个树来访问和操作XML的所有元素。 - **Element对象**:`Element`是XML文档中的节点,相当于HTML的`<tag>`。DOM4J提供了丰富的API来操作元素,如获取...
本文将详细介绍生成和解析XML的四种主要方法:DOM、DOM4J、SAX和JDOM。 1. DOM(Document Object Model) DOM是W3C组织推荐的一种解析XML的标准方式。它将XML文档视为一个树形结构,每个节点代表XML文档的一部分。...
在这个主题中,我们将深入探讨DOM4j如何帮助我们创建和解析XML文档,以及其背后的原理和用法。 首先,DOM4j采用了Document Object Model(DOM)的概念,但它比标准的Java DOM实现更加轻量级,性能更优。DOM4j的核心...
在Java编程中,DOM4J是一个非常流行的XML处理库,它提供了一套强大的API来创建、解析和操作XML文档。本教程将详细讲解如何利用DOM4J进行XML文件的创建和读取。首先,我们需要了解DOM4J的核心概念,如Element、...
1、xml文档解析 2、 dom4j解析xml 3、实现xml文件解析 xml字符串解析 xml MAP键值对解析 4、实现xml写入与生成文件
JAVA 解析XML和生成XML文档源码。比较全 1.DOM生成和解析XML文档 2.SAX生成和解析XML文档 3.DOM4J生成和解析XML文档 4.JDOM生成和解析XML
Java DOM4J解析XML是一种常见的处理XML文档的技术,它提供了灵活且高效的API,使得开发者能够方便地读取、写入、修改以及操作XML文件。DOM4J是Java中一个非常强大的XML处理库,它结合了DOM、SAX和JDOM的优点,同时也...
解析XML文档主要涉及以下过程: 1. **创建SAXReader对象**:`new SAXReader()`用于创建一个解析器实例,它可以读取XML文件并转换为DOM4J的Document对象。 2. **读取XML文件**:调用`read()`方法,传入包含XML数据...
DOM4J作为解析XML的工具,其主要功能和特性包括: 1. **DOM模型**:DOM4J提供了基于DOM(Document Object Model)的接口,允许开发者以树形结构操作XML文档。通过`Document`对象,可以访问XML文档的根元素,并通过`...
在Java编程中,DOM4J是一个非常流行的XML处理库,它提供了丰富的API来操作XML文档,包括创建、解析、修改和查询XML。下面我们将详细介绍如何使用DOM4J来创建一个XML文件。 首先,让我们了解DOM4J的基本概念。DOM4J...
在提供的文件列表中,`Test.java`可能包含使用DOM4J解析XML的示例代码。通常,这样的代码会包含以下部分: ```java import org.dom4j.Document; import org.dom4j.DocumentHelper; import org.dom4j.Element; // ...
2. **创建XML文件**:使用DOM4j创建一个新的XML文件,这通常涉及到`Document`、`Element`和`Writer`的使用。例如,你可以创建一个包含根元素和子元素的XML文件。 3. **动态创建XML节点**:在已有的XML文档中动态...