`

DOM4J 与 JDOM 解析XML

    博客分类:
  • XML
 
阅读更多
DOM4J解析:
package com.rui.dom4j;

import java.io.FileOutputStream;

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

public class Dom4JExercise {
	
	public static void main(String[] args) throws Exception {
		
		Document document = DocumentHelper.createDocument();
		
		Element root = DocumentHelper.createElement("联系人列表");
		
		document.setRootElement(root);
		
		root.addAttribute("公司", "A 集团");
		
		Element eleLinkman = root.addElement("联系人"); 
		
		eleLinkman.addElement("姓名").setText("张三");
		eleLinkman.addElement("公司").setText("A 公司");
		eleLinkman.addElement("电话").setText("(021)5555666");
		
		Element street = eleLinkman.addElement("地址");
		
		street.addElement("街道").setText("5 街");
		street.addElement("城市").setText("上海市");
		street.addElement("省份").setText("上海");
		
		Element eleLinkman2 = root.addElement("联系人"); 
		
		eleLinkman2.addElement("姓名").setText("王三");
		eleLinkman2.addElement("公司").setText("B 公司");
		eleLinkman2.addElement("电话").setText("(021)5555777");
		
		Element street2 = eleLinkman2.addElement("地址");
		
		street2.addElement("街道").setText("87 街");
		street2.addElement("城市").setText("北京市");
		street2.addElement("省份").setText("北京");
		
		
		XMLWriter xmlWriter = new XMLWriter(new FileOutputStream("linkmans.xml"), new OutputFormat("    ", true, "UTF-8"));
		
		xmlWriter.write(document);
	}

}

JDOM解析:
package com.rui.jdom;

import java.io.FileOutputStream;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

public class JDomExercise {

	public static void main(String[] args) throws Exception {

		Document doc = new Document();

		Element root = new Element("联系人列表").setAttribute("公司", "A 集团");

		doc.addContent(root);

		root.addContent(new Element("联系人")
				.addContent(new Element("姓名").setText("张三"))
				.addContent(new Element("公司").setText("A 公司"))
				.addContent(new Element("电话").setText("(021)5555666"))
				.addContent(
						new Element("地址")
								.addContent(new Element("街道").setText("5 街"))
								.addContent(new Element("城市").setText("上海市"))
								.addContent(new Element("省份").setText("上海"))));
		root.addContent(new Element("联系人")
				.addContent(new Element("姓名").setText("王三"))
				.addContent(new Element("公司").setText("B 公司"))
				.addContent(new Element("电话").setText("(021)5555777"))
				.addContent(
						new Element("地址")
								.addContent(new Element("街道").setText("87 街"))
								.addContent(new Element("城市").setText("上海市"))
								.addContent(new Element("省份").setText("上海"))));

		XMLOutputter out = new XMLOutputter(Format.getPrettyFormat().setIndent("    ").setEncoding("UTF-8"));

		out.output(doc, new FileOutputStream("linkmans.xml"));

	}

}


生成XML文件:
<?xml version="1.0" encoding="UTF-8"?>
<联系人列表 公司="A 集团">
    <联系人>
        <姓名>张三</姓名>
        <公司>A 公司</公司>
        <电话>(021)5555666</电话>
        <地址>
            <街道>5 街</街道>
            <城市>上海市</城市>
            <省份>上海</省份>
        </地址>
    </联系人>
    <联系人>
        <姓名>王三</姓名>
        <公司>B 公司</公司>
        <电话>(021)5555777</电话>
        <地址>
            <街道>87 街</街道>
            <城市>上海市</城市>
            <省份>上海</省份>
        </地址>
    </联系人>
</联系人列表>
分享到:
评论

相关推荐

    dom4j和jdom解析XML小例子

    下面是一个使用JDOM解析XML的代码片段: ```java import org.jdom2.Document; import org.jdom2.Element; import org.jdom2.input.SAXBuilder; // 创建一个SAXBuilder实例 SAXBuilder builder = new SAXBuilder();...

    DOM4J/JDOM对XML的操作

    在提供的`parse()`方法中,可以看到如何使用JDOM解析XML文件。首先,通过`SAXBuilder`类创建一个解析器实例,然后调用`build()`方法,传入XML文件的路径,将XML文件转换为`Document`对象。`Document`对象是JDOM中的...

    XML的四种解析器(dom,sax,jdom,dom4j)原理及性能比较,超详细

    常见的 XML 解析器有 DOM、SAX、JDOM 和 DOM4J 等。每种解析器都有其特点和优缺,选择合适的解析器对应用程序的性能和开发效率有很大影响。 1. DOM 解析器 DOM(Document Object Model)是 W3C 官方标准,用于表示...

    使用JDOM解析XML文件

    本篇文章将深入探讨如何使用JDOM解析XML文件。 首先,我们需要理解JDOM的基本结构。JDOM通过Document对象表示整个XML文档,Element代表XML元素,Attribute表示元素属性,Text表示元素内的文本内容。这些类构成了...

    dom4j和jdom的jar包

    DOM4J和JDOM是两种常用的Java XML处理库,它们都是为了方便开发者解析、操作和创建XML文档。本文将深入探讨这两个库的核心概念、特点以及它们在处理XML时的异同。 首先,DOM4J是一个非常灵活且功能强大的Java XML ...

    dom4j---xml解析jar包

    在Java环境中,解析XML文档时,我们通常会遇到各种库,其中DOM4J是一个非常流行的、功能强大的开放源代码库。这个库不仅简化了XML处理,还提供了XPath和XSLT的支持,使其成为Java开发者处理XML的首选工具之一。 **...

    java操作xml dom dom4j sax jdom

    以上四种方式各有优缺点,DOM适合小文件并要求快速访问任何部分,SAX适合大文件但需要实时处理,DOM4J和JDOM提供了更友好的API但可能消耗更多资源。在实际开发中,应根据项目需求选择合适的方法。在提供的"testxml...

    java jdom解析xml

    Java JDOM解析XML是Java开发中处理XML文档的一种方法,JDOM全称为Java Document Object Model,它是一个基于Java语言的API,用于创建、修改和读取XML文档。JDOM为XML处理提供了一种高效且方便的解决方案,尤其适用于...

    用4中方式(dom4j、jdom、dom、sax)解析xml

    用用4中方式(dom4j、jdom、dom、sax)解析xml

    dom4j-jdom.rar

    《深入解析DOM4J与JDOM:XML处理的利器》 在信息技术领域,XML(Extensible Markup Language)作为数据交换和存储的标准格式,被广泛应用于各种应用程序之间。XML文件的解析是开发过程中不可或缺的一部分,而DOM4J...

    XML解析-dom4j.jar-jdom.jar

    在Java编程中,解析XML文档通常需要借助于特定的库,如dom4j和jdom。这两个库都是Java平台上处理XML的优秀选择。 dom4j是一个功能强大的开源XML处理库,提供了灵活且高效的API。它不仅支持DOM模型,还支持SAX...

    Java的Dom4j和JDom的jar包

    3. Dom4j与JDom的比较: - 性能:两者性能相差不大,但在处理大型XML文档时,由于JDom完全加载到内存,可能比Dom4j消耗更多资源。 - API复杂度:JDom的API设计相对更直接,易于上手;而Dom4j虽然功能更全面,但API...

    dom4j解析xml文件的压缩包

    10. **JDOM兼容性**:这个压缩包中提到对jdom进行了封装,意味着DOM4J可能提供了一些与JDOM兼容的接口或方法,方便从JDOM迁移到DOM4J的项目。 压缩包中的`dom4j-1.6.1.jar`文件包含了DOM4J库的类和资源,可以直接在...

    Jdom、Dom4j 、dom解析xml文件

    在Java中,解析XML文件是常见的任务,有多种库供开发者选择,其中包括JDOM、DOM4J以及DOM。这三种解析器各有特点,下面将详细解释它们的工作原理和使用方法。 首先,我们来看看DOM(Document Object Model)解析器...

    用jdom解析xml

    **Java与XML:JDOM解析XML的详细指南** 在Java编程中,XML(eXtensible Markup Language)是一种被广泛使用的数据交换格式,用于存储结构化数据。为了处理XML文档,开发者可以使用多种库,其中之一就是JDOM。JDOM是...

    生成、解析xml的四种方式(dom,dom4j,sax,jdom)

    本文将详细介绍生成和解析XML的四种主要方法:DOM、DOM4J、SAX和JDOM。 1. DOM(Document Object Model) DOM是W3C组织推荐的一种解析XML的标准方式。它将XML文档视为一个树形结构,每个节点代表XML文档的一部分。...

    xstream_dom4j_jdom_groovy解析xml

    本主题聚焦于四种不同的Java库——XStream、Dom4j、Groovy以及JDOM,它们都是用来解析和操作XML文档的工具。 1. **XStream**: XStream是一个Java库,它提供了将Java对象序列化为XML,以及从XML反序列化回Java对象...

    dom4j解析XML所需jar包

    Jaxen可以与多种XML解析器(如DOM、DOM4J、JDOM等)协同工作,提供跨平台的XPath支持。 总结来说,DOM4J是一个全面且易用的XML处理工具,广泛应用于Java开发中。通过`dom4j-1.6.1.jar`和`jaxen-1.1.1.jar`这两个jar...

    总结Dom4j、JDom、SAX、Dom四种方法解析XML的资料和代码(Java)

    在Java开发中,有多种方式可以解析XML文档,包括DOM、SAX、JDOM和Dom4j。这四种方法各有优缺点,适用于不同的场景。 1. DOM(Document Object Model)解析: DOM是W3C推荐的一种解析XML的标准方式,它将整个XML文档...

    用jdom解析xml文件

    在这个例子中,我们将深入探讨如何使用JDOM解析XML文件,并进行遍历与构建。 首先,我们需要了解JDOM的基本概念。JDOM主要由三部分构成:SAXBuilder用于从XML源构建DOM树,Element代表XML文档的元素,Attribute代表...

Global site tag (gtag.js) - Google Analytics