当前位置:首页 > Java

java如何编写xml

2026-03-24 05:38:03Java

使用DOM生成XML

DOM(Document Object Model)是Java内置的XML处理API,适合构建结构化的XML文档。

创建DocumentBuilder实例,通过Document对象添加元素和属性:

import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
Document doc = factory.newDocumentBuilder().newDocument();

Element root = doc.createElement("root");
doc.appendChild(root);

Element child = doc.createElement("child");
child.setAttribute("id", "1");
child.setTextContent("Hello XML");
root.appendChild(child);

// 转换为字符串
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
StringWriter writer = new StringWriter();
transformer.transform(new DOMSource(doc), new StreamResult(writer));
String xmlString = writer.toString();

使用JDOM生成XML

JDOM是简化XML操作的第三方库,需添加依赖(如Maven):

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

代码示例:

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

Element root = new Element("root");
Document doc = new Document(root);

Element child = new Element("child");
child.setAttribute("id", "1");
child.setText("Hello XML");
root.addContent(child);

XMLOutputter outputter = new XMLOutputter(Format.getPrettyFormat());
String xmlString = outputter.outputString(doc);

使用XStream生成XML

XStream支持对象到XML的序列化,需添加依赖:

<dependency>
    <groupId>com.thoughtworks.xstream</groupId>
    <artifactId>xstream</artifactId>
    <version>1.4.20</version>
</dependency>

代码示例:

import com.thoughtworks.xstream.XStream;

class Person {
    String name = "John";
    int age = 30;
}

XStream xstream = new XStream();
String xml = xstream.toXML(new Person());
// 输出:<Person><name>John</name><age>30</age></Person>

使用StAX生成XML

StAX(Streaming API for XML)适合处理大型XML文件,基于事件驱动:

java如何编写xml

import javax.xml.stream.XMLOutputFactory;
import javax.xml.stream.XMLStreamWriter;

StringWriter writer = new StringWriter();
XMLStreamWriter xmlWriter = XMLOutputFactory.newInstance().createXMLStreamWriter(writer);

xmlWriter.writeStartDocument();
xmlWriter.writeStartElement("root");
xmlWriter.writeStartElement("child");
xmlWriter.writeAttribute("id", "1");
xmlWriter.writeCharacters("Hello XML");
xmlWriter.writeEndElement();
xmlWriter.writeEndElement();
xmlWriter.writeEndDocument();

String xmlString = writer.toString();

选择建议

  • DOM/JDOM:适合需要频繁修改或随机访问的XML文档。
  • StAX:适合内存受限的大型XML文件处理。
  • XStream:适合简单对象的快速序列化。

以上方法生成的XML均可通过文件输出流(如FileWriter)保存到本地文件。

标签: javaxml
分享给朋友:

相关文章

java如何

java如何

Java 基础语法 Java 是一种面向对象的编程语言,语法相对严谨。每个 Java 程序必须包含一个 main 方法作为程序入口。以下是一个简单的 Java 程序示例: public class…

java如何下载

java如何下载

下载Java的步骤 访问Oracle官方网站或OpenJDK项目页面下载Java开发工具包(JDK)。Oracle JDK适用于商业用途,OpenJDK为开源版本。 打开浏览器,进入Oracle J…

java如何编程

java如何编程

Java编程基础 Java是一种面向对象的编程语言,广泛应用于企业级开发、移动应用(Android)等领域。以下是Java编程的核心步骤和示例。 环境搭建 安装JDK 从Oracle官网下载适合…

java如何创建对象

java如何创建对象

创建对象的基本方法 在Java中,创建对象主要通过new关键字调用构造函数完成。基本语法为: ClassName objectName = new ClassName(); 例如创建String对象…

如何搭建java开发环境

如何搭建java开发环境

下载并安装JDK 从Oracle官网或OpenJDK下载适合操作系统的JDK版本。运行安装程序并按照提示完成安装,建议选择默认路径以减少配置复杂度。 配置环境变量 在系统环境变量中添加JAVA_HO…

如何学好java编程

如何学好java编程

理解基础概念 掌握Java的基础语法是学习的起点。变量、数据类型、运算符、控制结构(如循环和条件语句)是核心内容。面向对象编程(OOP)的概念(类、对象、继承、多态、封装)是Java的核心,需深入理解…