package xml;
import java.io.ByteArrayOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter;
public class JavaXML
{
public void BuildXMLDoc() throws IOException, JDOMException {
// 创建根节点 list;
Element root = new Element("list");
// 根节点添加到文档中;
Document Doc = new Document(root);
// 此处 for 循环可替换成 遍历 数据库表的结果集操作;
for (int i = 0; i < 5; i++) {
// 创建节点 user;
Element elements = new Element("user");
// 给 user 节点添加属性 id;
elements.setAttribute("id", "" + i);
// 给 user 节点添加子节点并赋值;
// new Element("name")中的 "name" 替换成表中相应字段,setText("xuehui")中 "xuehui
// 替换成表中记录值;
elements.addContent(new Element("name").setText("xuehui"));
elements.addContent(new Element("age").setText("28"));
elements.addContent(new Element("sex").setText("Male"));
// 给父节点list添加user子节点;
root.addContent(elements);
}
XMLOutputter XMLOut = new XMLOutputter();
//String file = this.getClass().getClassLoader().getResource("")
//.getPath();
// 将%20换成空格(如果文件夹的名称带有空格的话,会在取得的字符串上变成%20)
//file = file.replaceAll("%20", " ");
//file = file.substring(1, file.indexOf("classes")) + "source/"; // 文件路径
// 输出 user.xml 文件;
//XMLOut.setFormat(Format.getRawFormat());
XMLOut.setFormat(Format.getPrettyFormat());
ByteArrayOutputStream bos = new ByteArrayOutputStream();
XMLOut.output(Doc, bos/*new FileOutputStream("user.xml")*/);
// XMLOut.setFormat(Format.getRawFormat());
System.out.println(bos.toString());
}
public static void main(String[] args) {
try {
JavaXML jx = new JavaXML();
System.out.println("生成 mxl 文件...");
jx.BuildXMLDoc();
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
NULL 博文链接:https://newtime.iteye.com/blog/437109
JDOM虽然功能强大,但在处理大型XML文件时可能效率较低,因为它需要将整个文档加载到内存。这时,可以考虑使用StAX或Java内置的DOM API,它们提供了流式处理或分块处理的能力,降低了内存消耗。 总结来说,JDOM是一...
JDOM是Java中一个用于处理XML文档的库,它提供了一种高效且方便的方式来创建、读取、修改XML文件。本篇文章将深入探讨如何使用JDOM来读取XML文件。 首先,我们需要了解JDOM的基本概念。JDOM通过构建一棵DOM...
在这个例子中,我们将深入探讨如何使用JDOM解析XML文件,并进行遍历与构建。 首先,我们需要了解JDOM的基本概念。JDOM主要由三部分构成:SAXBuilder用于从XML源构建DOM树,Element代表XML文档的元素,Attribute代表...
本篇文章将深入探讨如何利用JDOM解析XML文件,并基于XML中的类名生成相应的对象。 首先,我们需要理解JDOM的基本概念。JDOM提供了一组Java对象来表示XML文档,包括Element(元素)、Attribute(属性)、Text(文本...
本文详细介绍了如何使用 JDOM 库创建 XML 文档,以及如何进行基本的 XML 文件解析。通过这些基础操作,您可以轻松地使用 Java 来管理和操作 XML 数据。JDOM 的简洁性和易用性使其成为处理 XML 数据的理想选择之一。
**JDOM解析XML文件** XML(eXtensible Markup Language)是一种用于标记数据的语言,广泛应用于数据交换、配置文件和文档存储等领域。在Java中,JDOM(Java Document Object Model)是一个流行的选择来解析和操作...
本篇将详细介绍如何利用JDOM在Java中生成XML文件,以及相关的核心概念和技术。 首先,我们需要理解XML的基本结构。XML(eXtensible Markup Language)是一种标记语言,它定义了元素、属性和文本内容,这些构成了XML...
JDOM,全称为Java Document Object Model,是一种专为Java设计的XML处理API,它提供了对XML文档结构的完整映射,使得我们可以方便地创建、读取和修改XML文件。下面将详细介绍如何使用JDOM来读取XML文件。 首先,...
使用JDOM创建XML文档涉及以下几个步骤: 1. 创建`DocumentBuilderFactory`实例。 2. 使用`DocumentBuilderFactory`创建`DocumentBuilder`。 3. 使用`DocumentBuilder`的`newDocument()`方法创建空的`Document`对象...
在IT行业中,XML(eXtensible Markup Language)是一种被广泛...无论是解析现有的XML文件还是构建新的XML文档,JDOM都能提供必要的支持。通过深入学习和实践,开发者可以充分利用JDOM的功能,提升XML处理的效率和质量。
- **SAX与DOM对比**:JDOM采用的是DOM模型,相比SAX解析器,它会将整个XML文档加载到内存中,适合小型XML文件。对于大型文件,可以考虑使用SAX或StAX以减少内存消耗。 - **优化策略**:如果确实需要处理大型XML...
在这个例子中,我们将学习如何读取XML文件,创建一个`SAXBuilder`对象来构建XML文档的DOM(文档对象模型)表示,然后通过`Document`对象来访问和修改XML结构。 2. `sohuchannel.xml`:这是我们要解析的XML文件,可能...
### JDOM操作XML文件的关键知识点 #### 一、JDOM简介 JDOM(Java Document Object Model)是一种基于Java的XML解析API,它提供了一种简便的方式来解析和操作XML文档。与传统的DOM相比,JDOM更加注重性能和易用性,...
XML(eXtensible Markup ...无论是创建新的XML文件还是从现有文件中提取数据,JDOM都能以直观的方式实现。通过以上示例,我们可以看出JDOM的强大之处在于其灵活性和易用性,使得开发人员可以轻松地与XML数据交互。
使用JDOM创建XML文档,可以通过Element的子类化来定义自定义的元素类型,然后通过添加子元素、属性和文本内容来构建XML结构。 **DOM4J** DOM4J是另一个流行的Java XML处理库,它不仅实现了DOM API,还提供了SAX和...
使用JDOM解析XML文件的第一步是创建一个`SAXBuilder`对象,然后通过调用其`build`方法,传入XML文件的输入流,得到一个`Document`对象,该对象代表了整个XML文档。 ```java SAXBuilder sb = new SAXBuilder(); ...
它提供了简单、高效的API来读取、修改和创建XML文件。本篇文章将深入探讨如何利用JDOM解析XML文件,以及在这个过程中涉及的关键知识点。 首先,我们需要了解XML(Extensible Markup Language)的基本概念。XML是一...
在这个小实例中,我们将深入探讨如何使用JDOM解析XML文件。 首先,我们需要引入JDOM的依赖。在Java项目中,如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ```xml <groupId>org.jdom <artifactId>...