`

使用DOM4J的一个小例子

    博客分类:
  • XML
阅读更多

原文:http://leign.iteye.com/blog/547071

package com.dujiali.test;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;

public class XMLTest {
	
	public String makeXml()
	{
		Document doc = DocumentHelper.createDocument();
		doc.setXMLEncoding("GBK");	//设置XML文件编码格式
		Element root = doc.addElement("info");
		Element element;
		element = root.addElement("user").addAttribute("username", "leign")
		.addAttribute("password", "testpass")
		.addElement("userInfo");
		element.addElement("性别").addText("男")
		.addAttribute("年龄", "22");
		
		String xmlStr = doc.asXML();
		
		System.out.println("xml===="+xmlStr);
		
		return xmlStr;
	}
	
	public Element getElemntByParseText(String xmlStr)
	{
		Element element = null;
		Document doc;
		try {
			//解析XML内容
			doc = DocumentHelper.parseText(xmlStr);
			Element root = doc.getRootElement();
			
			//获得指定元素
			element = root.element("user");
			System.out.println("element===="+element);
			
			//遍历
			List elementList = root.elements();
			if(elementList!=null && elementList.size()>0){
				int i=0,len=elementList.size();
				while(i<len){
					element = (Element)elementList.get(i);
					System.out.println("element===="+element);	
					i++;
				}
			}
		} catch (DocumentException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return element;
	}
	
	public void makeFile(String content)
	{
		try {
			File xmlFile = new File("D:\\testXml.xml");
			FileOutputStream fout = new FileOutputStream(xmlFile);
			if(content!=null)
				fout.write(content.getBytes());
			fout.flush();
			fout.close();
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
	public static void main(String[] args)
	{
		XMLTest xmltest = new XMLTest();
		String xmlContent = xmltest.makeXml();
		xmltest.makeFile(xmlContent);
		System.out.println(""+xmltest.getElemntByParseText(xmlContent));
	}
}

 

生成的XML文件,可根据内容区别addElemnt()与addAttribute()的区别

<?xml version="1.0" encoding="GBK"?>
<info>
	<user username="leign" password="testpass">
		<userInfo>
			<性别 年龄="22">男</性别>
		</userInfo>
	</user>
</info>

 说到XML与其他文件格式的转换,比较常见的有Excel、HTML、DOC等,其实Excel、WORD这些OFFICE文件本身就可以另存为XML格式,只是比一般的XML多了一些格式样式,且Excel可以自己识别它所转化的XML文件。网上也有很多XML文件转换器,有兴趣的朋友可以深入了解一下。

分享到:
评论

相关推荐

    dom4j 工具类 使用例子

    1. `parseXML(String xmlString)`: 这个方法接收一个XML字符串,使用DOM4J解析器将其转化为Document对象,便于后续处理。 2. `createXML(String rootElementName, Map attributes)`: 创建一个新的XML文档,根元素名...

    Dom4J完成例子,Dom4J

    Dom4j是一个开源的Java库,用于处理XML文档。它提供了简单且功能强大的API,使得XML的解析、创建、修改和读取变得更加容易。在这个例子中,我们将深入探讨Dom4j的核心功能和使用方法。 **1. XML解析** 解析XML文档...

    用dom4j操作xml的例子

    XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置文件以及文档存储等...在提供的"dom4j实例.pdf"文件中,您应该能找到更详细的代码示例和解释,帮助您进一步掌握DOM4J的使用。

    一个简单的Dom4j学习的例子

    **标题解析:** "一个简单的Dom4j学习的例子" 暗示了我们将探讨的是如何使用Dom4j这个Java库来处理XML文档的基础知识。Dom4j是一个灵活且高效的XML处理库,它提供了丰富的API来读取、写入、修改XML文档。 **描述...

    使用dom4j和jaxen解析xml

    **dom4j** 是一个非常灵活且功能强大的Java XML API,它提供了全面的XML解决方案,包括XML的读取、写入、修改以及XPath查询等功能。dom4j的核心思想是基于DOM模型,但比DOM更轻量级,性能更好。它支持事件驱动和SAX...

    dom4j简单例子

    DOM4J是一个强大的Java XML处理库,它提供了一套丰富的API来操作XML文档,包括读取、写入、修改和查询。在这个“dom4j简单例子”中,我们将深入理解DOM4J的基本用法和核心概念,以帮助你更好地利用这个库在实际项目...

    Dom4j例子,可以解析大部分的XML

    在TestDom4j项目中,可能包含一个简单的Java程序,演示了如何使用Dom4j解析XML文件、查找特定元素、修改元素内容,并将结果写回XML。这个例子对于初学者来说非常有帮助,因为它展示了Dom4j在实际应用中的基本用法。...

    dom4j 解析xml例子

    DOM4J是一个强大的Java库,专门用于处理XML文档。它提供了灵活、高性能的API,使得XML的解析、创建、操作变得简单。在这个“dom4j解析xml例子”中,我们将深入探讨DOM4J如何帮助开发者在Java环境中有效地处理XML数据...

    dom4j操作XMl例子

    DOM4J是一个强大的Java库,专门用于处理XML文档。它提供了灵活且高效的API,使得XML的读取、创建、修改和解析变得简单易行。在本示例中,"dom4jExample.java"是一个Java程序,它展示了如何利用DOM4J库来操作XML文件...

    dom4j配置文件例子

    例如,你可以使用DOM4J的DocumentBuilderFactory和DocumentBuilder来创建一个解析器,然后通过这个解析器加载XML文件,得到Document对象。接下来,可以通过Document对象的getRootElement()方法获取XML文档的根元素,...

    dom4j基本例子

    DOM4J是一个强大的Java库,专门用于处理XML文档。它提供了简单而灵活的方式来解析、创建、修改和查询XML文档。这个基本例子展示了DOM4J的核心功能,包括XML的读取、元素的操作以及XML结构的修改。 首先,让我们深入...

    DOM4j教程 例子

    DOM4j是一种用于处理XML的Java API,其设计目的是提供一个高效、功能丰富且易于使用的API。DOM4j是一个开源项目,可以在SourceForge等开源平台上获取到。DOM4j不仅在性能上表现出色,在功能性和易用性方面也得到了...

    dom4j关于xml读写的例子里面还有dom4j的jar包

    在这个压缩包中,你将找到一个DOM4J用于XML操作的例子,这对于初学者来说是一个很好的学习资源。DOM4J相比Java内置的DOM API更加轻量级,性能更优,而且它的API设计得更加友好,易于理解和使用。 XML(eXtensible ...

    DOM4j和log4j例子详解

    DOM4j是一个开源的Java XML API,它提供了非常丰富的功能,包括XML解析、文档构建、XPath处理以及XML Schema支持。DOM4j以其高效性能和易于使用的特性,被广泛应用于Java开发中,特别是在处理大型XML文档时,它的...

    dom4j的源文件(dom4j-1.6.1)含例子和jar包

    DOM4J 是一个非常强大的 Java XML API,它提供了丰富的功能,使得处理 XML 文件变得简单而高效。这个压缩包包含 DOM4J 的源代码、示例以及 jar 包,这对于我们理解其内部工作原理和进行二次开发极其有益。 1. **DOM...

    Dom4j解析配置文件与xml小例子

    本篇将通过一个实际的例子来探讨如何使用Dom4j解析XML配置文件。 首先,我们需要了解DOM4J的基本概念。DOM(Document Object Model)是一种用于表示XML或HTML文档的标准模型,而Dom4j是基于DOM的,但它比标准的DOM...

    我写的几个dom4j的入门例子.rar

    - 使用DOM4J创建新的XML文件或者更新现有文件是一个常见的任务。例如,`save.properties`可能是记录程序运行时配置的文件,DOM4J可以用来动态生成或修改这些配置。通过创建Element对象,设置属性和子元素,然后将...

    dom4j解析xml例子

    DOM4J是一个强大的Java库,专门用于处理XML文档。它提供了灵活、高性能的方式来解析、创建、修改和操作XML数据。这个“dom4j解析xml例子”压缩包应该包含了一些示例代码、帮助文档和使用说明,旨在帮助初学者快速...

    java dom4j 解析xml的例子,可用

    Java DOM4J库是用于处理XML文档的一个强大的开源框架,它提供了一种灵活且高效的方式来解析、创建和操作XML内容。DOM4J这个名字来源于“Document Object Model”(DOM)和“Java”的组合,它扩展了DOM接口,同时引入...

    用dom4j解析xml小例子

    XML(eXtensible Markup Language)是一种用于...对于初学者来说,通过上述的小例子,可以快速上手并深入理解DOM4J在XML处理中的应用。通过不断的实践和学习,开发者可以充分利用DOM4J来满足各种复杂的XML处理需求。

Global site tag (gtag.js) - Google Analytics