import java.io.File;
import java.io.PrintWriter;
import java.util.Iterator;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
public class Dom4jDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String filePath = "F:\\mystudty\\resourses\\create_parser_dom4j_xml.xml";
File file = new File(filePath);
createXML(file);
parserXML(file);
}
/**
* 生成xml文件
* @param file
*/
private static void createXML(File file){
Document document = DocumentHelper.createDocument();
Element companys = document.addElement("companys");
for(int i=0;i<10;i++){
Element company = companys.addElement("company");
Element name = company.addElement("name");
name.setText("Company_"+i);
Element webAddress = company.addElement("webAddress");
webAddress.setText("www.company_"+i+".com");
company.addAttribute("add", "address_"+i);
}
try {
PrintWriter pw = new PrintWriter(file,"utf-8");
XMLWriter xmlWriter = new XMLWriter(pw);
xmlWriter.write(document);
xmlWriter.close();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 解析xml文件
* @param file
*/
private static void parserXML(File file){
SAXReader saxReader = new SAXReader();
Document document;
try {
document = saxReader.read(file);
Element root = document.getRootElement();
for(Iterator persons=root.elementIterator();persons.hasNext();){
Element person = (Element) persons.next();
for(Iterator pro = person.elementIterator();pro.hasNext();){
Element node = (Element) pro.next();
System.out.print(node.getName()+":"+node.getText());
System.out.print("\t");
}
System.out.println();
}
} catch (DocumentException e) {
e.printStackTrace();
}
}
}
相关推荐
- **文档生成**: 当需要根据业务逻辑动态生成XML文档时,DOM4J的创建功能十分有用。 #### 四、结语 DOM4J作为一款成熟且强大的XML解析库,不仅提供了丰富的接口和功能,还拥有良好的性能和社区支持。对于任何需要...
5. **事件驱动解析(SAX)**:除了传统的DOM解析外,DOM4J还支持SAX解析器,这种解析方式适用于处理大型XML文件,因为它不需要一次性加载整个文档到内存。 6. **Namespace支持**:DOM4J提供了对XML命名空间的全面...
6. **StAX(Streaming API for XML)支持**:DOM4J也支持StAX解析器,这种解析方式结合了SAX的高效和DOM的易用性,可以在处理大型XML文件时节省内存。 7. **与JAXB集成**:DOM4J可以与Java Architecture for XML ...
以下代码展示了如何使用Dom4J创建一个简单的XML文档: ```java import java.io.File; import java.io.FileWriter; import org.dom4j.io.XMLWriter; import org.dom4j.*; public class CreateDoc { public int ...
在“dom4j解析xml文件(增删改查)”这个主题中,我们将深入探讨如何使用DOM4J来实现XML文档的四种基本操作:增加元素、删除元素、更新元素内容以及查询元素。 首先,让我们了解DOM4J的基本用法。在解析XML文件时,...
接下来,我们将创建一个`SAXReader`实例,它是DOM4J中的解析器,用于读取XML文件: ```java SAXReader reader = new SAXReader(); ``` 然后,使用`reader`读取XML文件并获取`Document`对象,`Document`代表整个XML...
**使用DOM4J创建XML文件刘宝宝版** 在Java编程中,DOM4J是一个非常流行的XML处理库,它提供了丰富的API来操作XML文档,包括创建、解析、修改和查询XML。下面我们将详细介绍如何使用DOM4J来创建一个XML文件。 首先...
XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置...无论是解析现有的XML文件,还是创建新的XML结构,dom4j都能胜任。在实际开发中,掌握dom4j的使用对于处理XML数据至关重要。
使用DOM4J创建XML文件通常涉及以下步骤: - 创建`Document`对象,这代表XML文档的根节点。 - 创建`Element`对象并添加到`Document`中,表示XML文档的元素层次结构。 - 添加`Attribute`,为元素设置属性。 - ...
要使用DOM4J读取XML文档,首先需要创建一个`SAXReader`对象,然后调用`read`方法传入XML文件路径。这将返回一个`Document`对象,我们可以从中获取所有元素信息。 ```java File file = new File("path_to_xml_file")...
在这个主题中,我们将深入探讨DOM4J如何递归地解析XML文件,并将解析结果映射到动态bean或Map中。 首先,让我们了解XML的基本概念。XML(Extensible Markup Language)是一种标记语言,常用于存储和传输结构化数据...
"以及解析xml文档所用的pdf文档说明"则表明还有一个PDF文档,可能详细介绍了如何使用dom4j来解析XML文件,包括各种方法、类和接口的使用示例。 **dom4j解析XML文档知识点:** 1. **dom4j简介**:dom4j是一个开放...
本篇文章将详细介绍如何使用DOM(Document Object Model)和DOM4j这两种流行的方法来解析XML文件。 首先,DOM是一种标准的W3C推荐的解析XML的方法,它将整个XML文档加载到内存中,形成一个树形结构,便于程序进行...
在“jar包执行20190331.rar”文件中,可能包含了一个Java项目,该项目使用DOM4J库解析XML文件并执行相关业务逻辑。执行此类项目通常涉及以下步骤: 1. 将jar包解压,找到主类(包含main方法)。 2. 使用Java命令行...
在本示例中,我们将深入探讨如何使用DOM4J解析XML文件,以`CacheInit.java`作为我们的核心代码示例,并参考`emailTemplateConfig.xml`作为实际操作的对象。 首先,让我们了解XML(eXtensible Markup Language)。...
使用SAXReader类可以从XML文件创建一个Document对象。例如: ```java SAXReader reader = new SAXReader(); Document document = reader.read("example.xml"); ``` 之后,我们可以遍历Document对象,获取元素...
4. **XML文档构建**:DOM4J允许动态构建XML文档,通过`DocumentFactory`可以创建XML元素,并逐层添加子元素和属性,构建复杂的XML结构。 5. **XML文档操作**:DOM4J提供了丰富的API,如添加、删除、移动和复制XML...
Dom4j(Document Object Model for Java)是一个Java语言的开源XML API,它提供了非常便捷的方式来解析、创建以及操作XML文档。相较于其他XML解析库如SAX、JDOM等,Dom4j具有更强大的功能与更好的性能。 为了使用...
在Java开发中,dom4j和jaxen是两个常用的库,用于解析和操作XML文档。 **dom4j** 是一个非常灵活且功能强大的Java XML API,它提供了全面的XML解决方案,包括XML的读取、写入、修改以及XPath查询等功能。dom4j的...