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是一个Java API,它为XML文档提供了全面且高性能的处理能力,使得开发者能够方便地构建、修改和访问XML数据。 **JDom详解** 1. ...
使用JDOM,我们可以通过API操作这些节点来实现对XML的解析和操作。 要读取XML文件,首先需要在项目中引入JDOM库。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>org.jdom ...
本篇文章将详细探讨JDOM在读写XML操作中的应用。 ### 1. JDOM简介 JDOM是一个针对Java的DOM(Document Object Model)实现,旨在为Java开发者提供一个高效且灵活的方式来处理XML文档。它提供了直接在内存中构建和...
在Java编程中,JDOM(Java Document Object Model)是处理XML的一种库,它提供了方便的方式来创建、修改和读取XML文档。本篇文章将深入探讨如何使用JDOM解析XML文件。 首先,我们需要理解JDOM的基本结构。JDOM通过...
在"使用Struts,jdom对xml数据进行操作"这个主题中,我们主要会探讨如何在基于Struts的Web应用中,利用JDOM来管理存储在XML文件中的数据。首先,让我们深入了解这两个技术: **Struts框架**: 1. **架构**:Struts...
- **优点**:JDOM提供了对XML的高性能访问,支持XPath查询,且完全基于Java,无需依赖其他库,如DOM或SAX。 2. **JDOM基本结构** - **Element(元素)**:XML文档中的每一个节点,可以包含子元素、属性和文本。 ...
JDOM是两位著名的 Java 开发人员兼作者,Brett Mclaughlin 和 Jason Hunter 的创作成果, 2000 年初在类似于 Apache 协议的许可下,JDOM 作为一个开放源代码项目正式开始研发,JDOM 作为一个开放源代码项目正式开始...
NULL 博文链接:https://wen2006953.iteye.com/blog/1769333
在Java编程中,JDOM(Java Document Object Model)是处理XML的一种流行库,它提供了方便的方式来创建、修改和解析XML文档。本篇文章将深入探讨JDOM库如何实现XML文件的读取操作。 首先,为了使用JDOM,我们需要在...
JDOM,全称为Java Document Object Model,是一种专为Java设计的XML处理API,它提供了对XML文档结构的完整映射,使得我们可以方便地创建、读取和修改XML文件。下面将详细介绍如何使用JDOM来读取XML文件。 首先,...
本文将对JDOM和XML的解析进行详细介绍,并进行两者之间的比较。 **JDOM** JDOM(Java Document Object Model)是Java平台上的一个XML处理库,它提供了一种直接在Java对象层次上操作XML文档的方法。JDOM的主要优势...
在`modify()`方法中,同样使用了`SAXBuilder`解析XML文件,生成`Document`对象,然后可以对文档进行修改。例如,如果想要修改特定元素的属性或内容,可以找到相应的元素并调用相应的修改方法。 DOM4J和JDOM之间的...
XML(eXtensible Markup Language)是一种用于存储和传输数据的标准格式,特别是在Java应用程序中,XML经常被用作数据交换的...同时,要注意在处理大型XML文件时可能存在的性能问题,以及在反射操作中对类结构的依赖。
在IT领域,特别是软件开发与数据处理中,对XML(可扩展标记语言)文件的解析与操作是一项基本而重要的技能。XML作为一种标准的数据交换格式,广泛应用于不同系统间的数据通信和存储。JDOM是一个用于Java的开源XML ...
最后,为了保存对XML文件的修改,我们需要创建`Transformer`并将其应用于`Document`: ```java import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml....
这使得开发人员能够非常直观地对XML文档进行读取、修改和创建。JDOM的核心类包括: - `Document`:代表整个XML文档。 - `Element`:代表XML文档中的元素节点。 - `Text`:代表元素中的文本内容。 - `Attribute`:...
XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用在数据交换、配置文件、文档存储等领域。...在实际开发中,结合这些工具,我们可以轻松地实现对XML数据的读取、修改和生成。
### JDOM 读取与修改 XML 文件 #### JDOM 简介 JDOM(Java Document Object Model)是一个用于处理 XML 数据的 Java 库。它提供了面向对象的 API 来解析、创建和修改 XML 文档。JDOM 的设计非常直观且易于使用,...
7. **修改XML**: JDOM支持对XML进行修改,包括添加、删除和更新元素、属性等。修改后,需要使用`XMLOutputter`来生成新的XML字符串或写入到文件。 ```java XMLOutputter xmlOutput = new XMLOutputter(); xml...