package
com.holen.dom4j;
import
java.io.File;
import
java.io.FileWriter;
import
java.util.Iterator;
import
java.util.List;
import
org.dom4j.Attribute;
import
org.dom4j.Document;
import
org.dom4j.DocumentHelper;
import
org.dom4j.Element;
import
org.dom4j.io.OutputFormat;
import
org.dom4j.io.SAXReader;
import
org.dom4j.io.XMLWriter;
/**
*
@author
Holen
Chen
*/
public
class
Dom4jDemo
{
public
Dom4jDemo()
{
}
/**
*
建立一个
XML
文档
,
文档名由输入参数决定
*
@param
filename
需建立的文件名
*
@return
返回操作结果
,
0
表失败
,
1
表成功
*/
public
int
createXMLFile(String
filename){
/**
返回操作结果
,
0
表失败
,
1
表成功
*/
int
returnValue
=
0;
/**
建立
document
对象
*/
Document
document
=
DocumentHelper.createDocument();
/**
建立
XML
文档的根
books
*/
Element
booksElement
=
document.addElement(
"books"
);
/**
加入一行注释
*/
booksElement.addComment(
"This is a test for dom4j, holen, 2004.9.11"
);
/**
加入第一个
book
节点
*/
Element
bookElement
=
booksElement.addElement(
"book"
);
/**
加入
show
参数内容
*/
bookElement.addAttribute(
"show"
,
"yes"
);
/**
加入
title
节点
*/
Element
titleElement
=
bookElement.addElement(
"title"
);
/**
为
title
设置内容
*/
titleElement.setText(
"Dom4j Tutorials"
);
/**
类似的完成后两个
book
*/
bookElement
=
booksElement.addElement(
"book"
);
bookElement.addAttribute(
"show"
,
"yes"
);
titleElement
=
bookElement.addElement(
"title"
);
titleElement.setText(
"Lucene Studing"
);
bookElement
=
booksElement.addElement(
"book"
);
bookElement.addAttribute(
"show"
,
"no"
);
titleElement
=
bookElement.addElement(
"title"
);
titleElement.setText(
"Lucene in Action"
);
/**
加入
owner
节点
*/
Element
ownerElement
=
booksElement.addElement(
"owner"
);
ownerElement.setText(
"O'Reilly"
);
try
{
/**
将
document
中的内容写入文件中
*/
XMLWriter
writer
=
new
XMLWriter(
new
FileWriter(
new
File(filename)));
writer.write(document);
writer.close();
/**
执行成功
,
需返回
1
*/
returnValue
=
1;
}
catch
(Exception
ex){
ex.printStackTrace();
}
return
returnValue;
}
/**
*
修改
XML
文件中内容
,
并另存为一个新文件
*
重点掌握
dom4j
中如何添加节点
,
修改节点
,
删除节点
*
分享到:
相关推荐
5. 建立XML文档:DOM4J提供了简单的方法来创建新的XML文档或修改现有文档。例如,可以使用`DocumentFactory`创建新的`Document`,然后通过`Element`对象构建XML结构。 6. 功能丰富的API:DOM4J的API设计得非常友好...
在这个项目中,DOM4J可能用于创建XML文件结构,表示文件传输的状态或元信息,或者在文件传输完成后记录日志。文件的发送方先将文件信息转换为XML格式,通过TCP发送,接收方接收到XML数据后,使用DOM4J解析并执行相应...
8. 性能考虑:虽然DOM4J提供了方便的操作XML的API,但DOM模型(Document Object Model)会将整个XML加载到内存中,对于大体积的XML文件可能会消耗大量内存。在处理大型XML时,可以考虑使用SAX或者StAX等基于事件的...
dom4j是一个灵活且功能强大的Java XML API,它提供了一种高效且易于使用的结构来读取、构建、修改和写入XML文档。dom4j-1.6.1是其一个版本,包含了对XML解析、操作和序列化的全面支持。 1. XML解析:dom4j采用事件...
《DOM4J 2.1.0:基于Java集合框架的XML文档对象模型》 DOM4J是一个强大的、灵活的开源Java库,专门用于处理XML文档。它建立在Java Collections Framework之上,为XML处理提供了丰富的功能,使得XML的读取、创建、...
1. **解析XML文档**:DOM4J使用SAX或StAX解析器读取XML文件,并构建一个树形结构的Document对象,允许开发者通过XPath表达式进行查询。 2. **XPath支持**:DOM4J支持XPath,这是一种强大的查询语言,可以快速定位...
首先,dom4j是一个强大的Java XML API,它提供了全面的XML处理功能,包括解析、生成、修改和查询XML文档。在该项目中,dom4j用于读取和解析XML配置文件,这些配置文件通常定义了Java类与数据库表之间的映射关系,...
相比于其他的解析器如DOM和SAX,DOM4J在易用性和灵活性方面表现出色,特别适合于中小规模的XML文件处理。 首先,我们需要了解DOM4J的基本使用。XML文件通常以树形结构表示,DOM4J通过Document对象来代表整个XML文档...
DOM4J的主要功能包括读取XML文件、遍历和修改XML树、以及生成新的XML文档。 1. 加载XML文档:使用`DocumentFactory.createDocument()`或`DocumentBuilder.build()`方法创建`Document`对象。 2. 遍历XML:通过`...
为了读取和写入 XML 配置文件,本项目使用了 Dom4j 库,Dom4j 是一个 Java 库,用于读取和写入 XML 文件。Dom4j 库提供了一个简洁的 API,允许开发者快速地读取和写入 XML 文件。在本项目中,使用了 Dom4j-1.6.1.jar...
DOM4J通过建立XML文档的树形结构,使得开发者可以像操作Java对象一样操作XML元素。例如,你可以通过简单的API添加、删除、移动或者修改元素、属性和文本。这种面向对象的API大大简化了XML处理的复杂性。 ### XPath...
1. **文档对象模型(DOM)**:DOM4J建立在DOM模型之上,将XML文档表示为一个由节点组成的树,每个节点代表XML文档的一部分,如元素、属性、文本等。开发者可以通过节点之间的关系来操作XML。 2. **API接口**:DOM4J...
解析XML文件时,DOM4J会构建一个完整的DOM(Document Object Model)树,这使得我们可以方便地通过元素路径或者XPath表达式来访问和操作XML中的任何节点。以下是一个简单的示例,展示如何使用DOM4J解析XML文件并获取...
首先,DOM4J是一个非常强大的Java XML API,它提供了丰富的功能,如读取、创建、修改XML文档。DOM4J的主要优点在于它的灵活性和高效性。它支持多种解析器,包括SAX和DOM,并且提供了一种基于事件驱动和基于树形结构...
结合这三个概念,我们可以想象一个场景:一个Java应用使用dom4j解析XML配置文件,该文件包含了DSN信息,从而能够通过JDBC连接到数据库获取数据。然后,这个应用利用Apache POI将这些数据整理并写入到Excel表格中,...
DOM是一种将整个XML文件加载到内存中的解析方法,创建一个树形结构来表示XML文档。这种方式便于遍历和修改XML文档,但对大型文件可能内存消耗较大。 - 使用Java内置的`javax.xml.parsers.DocumentBuilderFactory`和...
在Java中,有多种解析XML文件的方式,包括DOM (Document Object Model)、SAX (Simple API for XML) 和 DOM4J。这些方法各有优势和局限性,选择哪一种取决于具体的应用场景和需求。 #### 二、DOM 解析方式 DOM 解析...
在提供的"dom+xstream"压缩包中,可能包含了这两个库的jar文件,以及示例代码或者测试用例,用于演示如何将DOM4J解析的XML数据通过XStream进行序列化和反序列化。用户解压后可以直接引入到自己的项目中,无需额外...
本教程将详细讲解如何通过Java编程语言利用DOM4J库来抓取网络上的XML文件。 首先,我们需要了解DOM4J是什么。DOM4J是一个强大的Java XML API,它提供了全面的XML处理功能,包括读取、写入、修改和查询XML文档。相比...
DOM4J在这个过程中起到了关键作用,不仅简化了XML文件的解析,还提高了整体系统的稳定性和效率。 #### JDOM JDOM也是另一种流行的Java XML处理工具,它提供了一种简单的方法来创建和操作XML文档。 - **优点**:...