`

dom4j操作xml笔记

    博客分类:
  • XML
xml 
阅读更多
首先是读取xml文件。
SAXReader reader=new SAXReader();
Document doc=reader.read(new File(filepath));

这里的filepath为xml文件的路径。
获取了Document对象之后, 便可以对xml文件进行进一步的读取操作.


然后是写入文件

package com.lj.test;

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 Test06
{
	public static void main(String[] args) throws IOException
	{
		Document doc=DocumentHelper.createDocument();
		
		
		Element root=doc.addElement("users");
		Element user=root.addElement("user");
		user.addElement("id").addText("1");
		user.addElement("name").addText("z");
		
		
		user=root.addElement("user");
		user.addElement("id").addText("2");
		user.addElement("name").addText("w");
		
		
		
		 
		XMLWriter out=new XMLWriter(new FileWriter("src/main/resources/User.xml"),OutputFormat.createPrettyPrint());
		
		out.write(doc);
		
	
		
		
		out.flush();
		out.close();
	}
}



========================================
将list对象进行封装写入xml

package com.lj.test;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;

import com.lj.model.Person;

public class Test08
{
	public static void main(String[] args) throws IOException
	{	
		
		Document doc=DocumentHelper.createDocument();
		System.out.println(doc);
	 
		
		Person p1=new Person("li","233",25);
		Person p2=new Person("wu","123",27);
		
		List<Person> al=new ArrayList<Person>();
		al.add(p1);
		al.add(p2);
		
		
		doc=writeList2XML(doc, al);
		 
		XMLWriter writer=new XMLWriter(new FileWriter(new File("src/main/resources/Person.xml")),OutputFormat.createPrettyPrint());
		
		 
		
		writer.write(doc);
		
		writer.flush();
		writer.close();
	}

	private static Document writeList2XML(Document doc, List<Person> persons)
	{
		// Document doc=DocumentHelper.createDocument();
		Element root = doc.addElement("persons");
		System.out.println(root);

		for (Person p : persons)
		{

			Element ep = root.addElement("person");
			ep.addAttribute("age", p.getAge() + "");
			ep.addElement("name").setText(p.getName());
			ep.addElement("password").setText(p.getPassword());
			
		}
		
		
		
		 
		
		return doc;
		
		
	}
}

分享到:
评论

相关推荐

    XML DOM4J学习笔记

    本篇笔记将深入探讨XML DOM4J的学习要点。 一、XML基础知识 1. XML结构:XML文档由元素(Element)、属性(Attribute)、文本内容(Text)、注释(Comment)等组成。每个XML文档都有一个根元素,其他元素嵌套在根...

    Dom4j 解析Xml文档及 XPath查询 学习笔记

    **标题:** Dom4j 解析Xml文档及 XPath查询 学习笔记 **正文:** XML(eXtensible Markup Language)是一种标记语言,常用于数据交换、配置存储以及文档结构化表示。在Java世界中,解析XML文档有多种库,其中Dom4j是...

    DOM4J笔记.学习如何应用DOM4J开发XML

    - **创建和修改**:DOM4J不仅用于读取XML,还可以创建和修改XML文档。可以添加新元素、修改现有元素的属性、删除元素等。例如,可以使用`Element.addElement(String name)`创建新元素,`Attribute.setAttribute...

    dom4j解析XML(学习笔记)

    ### DOM4j解析XML知识点详解 #### 一、DOM4j简介 DOM4j是一个用于处理XML文档的...通过以上步骤,我们可以了解到如何使用DOM4j创建、写入并输出XML文档的基本流程,这对于理解和应用DOM4j进行XML操作是非常有帮助的。

    Java创建xml文档笔记(DOM,DOM4J)

    本笔记将深入探讨如何使用DOM(文档对象模型)和DOM4J库来创建XML文档。 一、DOM解析器 DOM是W3C推荐的一种XML解析标准,它将整个XML文档加载到内存中,形成一棵树形结构,称为DOM树。通过DOM,我们可以方便地访问...

    Dom4j学习教程+API+xml实用大全+xml学习笔记+htc

    5. **API(应用程序接口)**: Dom4j的API文档是开发者的重要工具,它详细说明了类、方法和属性,帮助开发者理解如何利用Dom4j进行XML操作,如创建元素、添加属性、读取节点值等。 6. **HTC**: HTC是一家知名的智能...

    Dom4j学习笔记

    **标题解析:** "Dom4j学习笔记" 这个标题明确指出了我们要探讨的主题——Dom4j。Dom4j是一个流行的Java库,用于处理XML文档。它提供了丰富的API,使得XML的读取、写入、操作变得简单易行。在学习笔记中,通常会涵盖...

    dom4j 学习笔记

    本文将深入探讨DOM4J的核心概念、基本操作以及其在XML处理中的应用。 1. **DOM4J概述** - DOM4J的核心理念是提供一个灵活且高性能的XML处理框架,支持多种XML解析模型,包括DOM、SAX和STAX。 - 它不仅包含了XML...

    dom4j 包含例子 各种增删改查

    "2012-4-10 有关 xml dom4j的 crud"可能是另一个教程或者笔记,详细讲解了如何利用DOM4J进行XML的CRUD操作。这个文件可能包含了详细的步骤和代码示例,对于学习DOM4J非常有帮助。 "自己写的 dom4j的例子"很显然是...

    dom4j学习笔记

    ### 四、DOM4J生成XML DOM4J可以方便地生成XML文档。首先创建`Document`对象,然后构建元素结构,最后使用`OutputStream`或`Writer`输出XML文档。 ```java Document document = DocumentFactory.getInstance()....

    DOM4J学习笔记

    - **读取XML**:SAXReader类可以读取XML文件,并构建DOM4J Document对象。 8. **与其它XML库的对比**: - **与DOM的比较**:DOM4J更轻量级,API更友好,而DOM更适合大型、复杂的XML文档。 - **与JDOM的比较**:...

    dom4j学习笔记.txt

    #### 四、DOM4J与其他XML技术的比较 与DOM和SAX相比,DOM4J具有以下优势: 1. **性能**: DOM4J在内存消耗和执行速度方面通常优于DOM。 2. **易用性**: DOM4J提供了更简洁的API来处理XML文档。 3. **功能**: DOM4J...

    xml学习笔记

    7. **XML序列化与反序列化**:DOM4J可以将XML Document对象写入文件,实现XML的序列化,反之,也可以从文件中读取XML并构建DOM4J对象,这就是反序列化。 8. **事件驱动模型SAX**:虽然DOM4J主要基于DOM模型,但也...

    dom4j包(用于xml)

    用于xml,dom4j解析比进口快不崩溃崩溃笔记本尽快

    java与xml 学习笔记整理

    另外,JDOM和DOM4J是两个流行的DOM替代库,提供了更友好的API来操作XML,尤其是对于复杂的XML结构。 JDOM简化了DOM的一些操作,它使用Java对象直接映射XML元素,使得操作更直观。DOM4J则在DOM的基础上进行了扩展,...

    xml笔记及操作代码

    自己总结的一份xml学习笔记。内容包括xml文件的书写格式,约束、jaxp及dom4j对xml解析的代码。

    读写Excel jxl.jar 读xml (log4j 文件上传下载笔记).rar

    这篇文档将深入探讨Java中如何使用jxl.jar库进行Excel文件的读写操作,解析XML文件,以及关于log4j的日志记录系统和文件的上传下载笔记。在现代的IT环境中,这些技能对于数据处理、日志管理和系统交互至关重要。 ...

    树懒_day05.1_xml_DOM4J笔记

    移动开发的小白树懒正在努力的学习移动开发中的web体系中的xml解析,每天提高自己...

    XML笔记+源码!!!!!!!!!!

    在Java编程中,XML被广泛应用于配置文件、数据交换...通过阅读“XML笔记”和实践DOM4J源码,可以深入了解XML的解析机制,提高处理XML文档的能力。在实际开发中,结合Java的XML处理库,能更好地进行数据交换和文件操作。

Global site tag (gtag.js) - Google Analytics