`
newspringwork
  • 浏览: 101350 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Jdom读写XML

    博客分类:
  • XML
 
阅读更多

1.maven引入jdom2

		<dependency>
			<groupId>org.jdom</groupId>
			<artifactId>jdom2</artifactId>
			<version>2.0.6</version>
		</dependency>

 2.实例

import java.io.FileOutputStream;
import java.util.List;

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.input.SAXBuilder;
import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter;

public class MemInfoParserJDOM {

	/**
	 * log4j2日志
	 */
	protected static Logger log = LogManager.getLogger();

	public static void main(String[] args) {
		String path = "/data/workspace/tec-demo/src/main/java/cn/tinyf/demo/xml/jdom/jdom-data.xml";
		MemInfoParserJDOM dj = new MemInfoParserJDOM();
		dj.createXml(path);
		dj.parserXml(path);
	}

	/**
	 * 生成XML
	 * 
	 * @param filePath
	 *            文件路径
	 */
	public void createXml(String filePath) {
		// 创建根节点
		Element root = new Element("MemInfo");
		root.setAttribute("class", "0501");
		// 创建第一个子节点
		root.addContent(createElementPerson(1, "James", 32));
		// 创建第二个子节点
		root.addContent(createElementPerson(2, "Kim", 38));
		// 创建第二个子节点
		root.addContent(createElementPerson(3, "Joe", 24));
		// 根节点添加到文档Document中
		Document document = new Document(root);
		try {
			// 输出到文件
			XMLOutputter XMLOut = new XMLOutputter();
			Format f = Format.getPrettyFormat();
			f.setEncoding("UTF-8");// default=UTF-8
			XMLOut.setFormat(f);
			XMLOut.output(document, new FileOutputStream(filePath));
		} catch (Exception e) {
			log.error(e);
		}
	}

	/**
	 * 创建学生子节点
	 * 
	 * @param no
	 *            学号
	 * @param name
	 *            姓名
	 * @param age
	 *            年龄
	 * @return
	 */
	private Element createElementPerson(int no, String name, int age) {
		Element person = new Element("person");
		person.setAttribute("no", no + "");
		// 姓名子节点
		Element nameE = new Element("name");
		nameE.addContent(name);
		person.addContent(nameE);
		// 年龄子节点
		Element ageE = new Element("age");
		ageE.addContent(age + "");
		person.addContent(ageE);
		// 返回节点
		return person;
	}

	/**
	 * 解析XML
	 * 
	 * @param filePath
	 *            文件路径
	 */
	public void parserXml(String fileName) {
		try {
			// 构建SAX解析器
			SAXBuilder builder = new SAXBuilder();
			// 解析获得文档对象
			Document document = builder.build(fileName);
			Element root = document.getRootElement();
			//遍历子节点
			List<Element> persons = root.getChildren("person");
			for (int i = 0; i < persons.size(); i++) {
				Element person = persons.get(i);
				log.info("学号:{},姓名:{},年龄:{}", person.getAttribute("no").getValue(), person.getChildText("name"),
						person.getChildText("age"));
			}
		} catch (Exception e) {
			log.error(e);
		}
	}
}

 

分享到:
评论

相关推荐

    JDom 读写XML

    标题“JDom 读写XML”指的是使用JDom库进行XML文档的处理,包括读取和写入操作。JDom是一个Java API,它为XML文档提供了全面且高性能的处理能力,使得开发者能够方便地构建、修改和访问XML数据。 **JDom详解** 1. ...

    jdom 读取XML 文件

    使用JDOM,我们可以通过API操作这些节点来实现对XML的解析和操作。 要读取XML文件,首先需要在项目中引入JDOM库。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;org.jdom ...

    jdom读写xml说明

    本篇文章将详细探讨JDOM在读写XML操作中的应用。 ### 1. JDOM简介 JDOM是一个针对Java的DOM(Document Object Model)实现,旨在为Java开发者提供一个高效且灵活的方式来处理XML文档。它提供了直接在内存中构建和...

    使用JDOM解析XML文件

    在Java编程中,JDOM(Java Document Object Model)是处理XML的一种库,它提供了方便的方式来创建、修改和读取XML文档。本篇文章将深入探讨如何使用JDOM解析XML文件。 首先,我们需要理解JDOM的基本结构。JDOM通过...

    使用Struts,jdom对xml数据进行操作

    在"使用Struts,jdom对xml数据进行操作"这个主题中,我们主要会探讨如何在基于Struts的Web应用中,利用JDOM来管理存储在XML文件中的数据。首先,让我们深入了解这两个技术: **Struts框架**: 1. **架构**:Struts...

    java jdom解析xml

    - **优点**:JDOM提供了对XML的高性能访问,支持XPath查询,且完全基于Java,无需依赖其他库,如DOM或SAX。 2. **JDOM基本结构** - **Element(元素)**:XML文档中的每一个节点,可以包含子元素、属性和文本。 ...

    jdom读写xml代码

    JDOM是两位著名的 Java 开发人员兼作者,Brett Mclaughlin 和 Jason Hunter 的创作成果, 2000 年初在类似于 Apache 协议的许可下,JDOM 作为一个开放源代码项目正式开始研发,JDOM 作为一个开放源代码项目正式开始...

    jdom读写XML

    NULL 博文链接:https://wen2006953.iteye.com/blog/1769333

    JDOM对XML文件的读取

    在Java编程中,JDOM(Java Document Object Model)是处理XML的一种流行库,它提供了方便的方式来创建、修改和解析XML文档。本篇文章将深入探讨JDOM库如何实现XML文件的读取操作。 首先,为了使用JDOM,我们需要在...

    java利用jdom读取xml文件

    JDOM,全称为Java Document Object Model,是一种专为Java设计的XML处理API,它提供了对XML文档结构的完整映射,使得我们可以方便地创建、读取和修改XML文件。下面将详细介绍如何使用JDOM来读取XML文件。 首先,...

    jdom_xml.rar_jdom_xml

    本文将对JDOM和XML的解析进行详细介绍,并进行两者之间的比较。 **JDOM** JDOM(Java Document Object Model)是Java平台上的一个XML处理库,它提供了一种直接在Java对象层次上操作XML文档的方法。JDOM的主要优势...

    DOM4J/JDOM对XML的操作

    在`modify()`方法中,同样使用了`SAXBuilder`解析XML文件,生成`Document`对象,然后可以对文档进行修改。例如,如果想要修改特定元素的属性或内容,可以找到相应的元素并调用相应的修改方法。 DOM4J和JDOM之间的...

    利用JDOM解析xml文件

    XML(eXtensible Markup Language)是一种用于存储和传输数据的标准格式,特别是在Java应用程序中,XML经常被用作数据交换的...同时,要注意在处理大型XML文件时可能存在的性能问题,以及在反射操作中对类结构的依赖。

    Jdom查找XML文件的所有节点内容

    在IT领域,特别是软件开发与数据处理中,对XML(可扩展标记语言)文件的解析与操作是一项基本而重要的技能。XML作为一种标准的数据交换格式,广泛应用于不同系统间的数据通信和存储。JDOM是一个用于Java的开源XML ...

    java利用jdom解析xml文件

    最后,为了保存对XML文件的修改,我们需要创建`Transformer`并将其应用于`Document`: ```java import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml....

    JDOM操作xml文件的xmlBean

    这使得开发人员能够非常直观地对XML文档进行读取、修改和创建。JDOM的核心类包括: - `Document`:代表整个XML文档。 - `Element`:代表XML文档中的元素节点。 - `Text`:代表元素中的文本内容。 - `Attribute`:...

    jdom解析xml文件小实例

    XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用在数据交换、配置文件、文档存储等领域。...在实际开发中,结合这些工具,我们可以轻松地实现对XML数据的读取、修改和生成。

    jdom 读取修改xml文件

    ### JDOM 读取与修改 XML 文件 #### JDOM 简介 JDOM(Java Document Object Model)是一个用于处理 XML 数据的 Java 库。它提供了面向对象的 API 来解析、创建和修改 XML 文档。JDOM 的设计非常直观且易于使用,...

    Jdom解析xml案例

    7. **修改XML**: JDOM支持对XML进行修改,包括添加、删除和更新元素、属性等。修改后,需要使用`XMLOutputter`来生成新的XML字符串或写入到文件。 ```java XMLOutputter xmlOutput = new XMLOutputter(); xml...

Global site tag (gtag.js) - Google Analytics