- Java XML 教程
- Java XML 首页
- Java XML 概述
- Java XML 解析器
- Java DOM 解析器
- Java DOM 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- Java SAX 解析器
- Java SAX 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- JDOM XML 解析器
- JDOM XML 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- Java StAX 解析器
- Java StAX 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- Java XPath 解析器
- Java XPath 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- Java DOM4J 解析器
- Java DOM4J 解析器
- 解析 XML 文档
- 查询 XML 文档
- 创建 XML 文档
- 修改 XML 文档
- Java XML 有用资源
- Java XML - 问答
- Java XML - 快速指南
- Java XML - 有用资源
- Java XML - 讨论
Java JDOM Document clone() 方法
Java JDOM 的clone()方法用于获取文档的深拷贝。它创建当前文档的精确副本。
语法
以下是 Java JDOM Document clone() 方法的语法:
Document.clone();
参数
Java clone() 方法不接受任何参数。
返回值
Java clone() 方法返回当前 Document 对象的副本。
示例 1
在这个基本示例中,我们创建了一个 XML 文档,并使用 Java JDOM Document clone() 方法获取其精确副本。
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.output.XMLOutputter;
public class CloneDocument {
public static void main(String args[]) {
try {
//Create a new Document
Document doc = new Document();
//Create root Element
Element root = new Element("bookstore").setText("Coffee with Pages");
//Add root Element
doc.addContent(root);
//Cloning the document
Document cloneDoc = doc.clone();
//Printing document
XMLOutputter xmlOutput = new XMLOutputter();
System.out.println("-----------Original Document-----------\n");
xmlOutput.output(doc, System.out);
System.out.println("\n-----------Cloned Document-----------\n");
xmlOutput.output(cloneDoc, System.out);
} catch (Exception e) {
e.printStackTrace();
}
}
}
输出窗口显示原始文档和克隆文档。
-----------Original Document----------- <?xml version="1.0" encoding="UTF-8"?> <bookstore>Coffee with Pages</bookstore> -----------Cloned Document----------- <?xml version="1.0" encoding="UTF-8"?> <bookstore>Coffee with Pages</bookstore>
示例 2
我们需要克隆以下bookstore.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<!-- Information of a Bookstore (last updated o5-08-2024) -->
<bookstore>
<!-- All the books in the store are listed -->
<book>
<name>Treasure Island</name>
<author>Robert Louis</author>
<price>1400</price>
</book>
<book>
<name>Oliver Twist</name>
<author>Charles Dickens</author>
<price>2000</price>
</book>
<book>
<name>War and Peace</name>
<author>Leo Tolstoy</author>
<price>1500</price>
</book>
</bookstore>
让我们读取现有的 bookstore.xml 文件并获取此文档的克隆。为此,我们首先读取 bookstore.xml 文件,并使用 SAXBuilder 构建文档。然后,我们使用 clone() 方法获取此文档的深拷贝。
import java.io.File;
import org.jdom2.Document;
import org.jdom2.input.SAXBuilder;
import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter;
public class CloneDocument {
public static void main(String args[]) {
try {
//Reading the document
SAXBuilder saxBuilder = new SAXBuilder();
File inputFile = new File("bookstore.xml");
Document doc = saxBuilder.build(inputFile);
//Cloning the document
Document cloneDoc = doc.clone();
//Printing document
XMLOutputter xmlOutput = new XMLOutputter();
xmlOutput.setFormat(Format.getPrettyFormat());
System.out.println("-----------Original Document-----------\n");
xmlOutput.output(doc, System.out);
System.out.println("\n-----------Cloned Document-----------\n");
xmlOutput.output(cloneDoc, System.out);
} catch (Exception e) {
e.printStackTrace();
}
}
}
输出窗口显示原始 bookstore.xml 文件及其克隆文档。
-----------Original Document-----------
<?xml version="1.0" encoding="UTF-8"?>
<!-- Information of a Bookstore (last updated o5-08-2024) -->
<bookstore>
<!-- All the books in the store are listed -->
<book>
<name>Treasure Island</name>
<author>Robert Louis</author>
<price>1400</price>
</book>
<book>
<name>Oliver Twist</name>
<author>Charles Dickens</author>
<price>2000</price>
</book>
<book>
<name>War and Peace</name>
<author>Leo Tolstoy</author>
<price>1500</price>
</book>
</bookstore>
-----------Cloned Document-----------
<?xml version="1.0" encoding="UTF-8"?>
<!-- Information of a Bookstore (last updated o5-08-2024) -->
<bookstore>
<!-- All the books in the store are listed -->
<book>
<name>Treasure Island</name>
<author>Robert Louis</author>
<price>1400</price>
</book>
<book>
<name>Oliver Twist</name>
<author>Charles Dickens</author>
<price>2000</price>
</book>
<book>
<name>War and Peace</name>
<author>Leo Tolstoy</author>
<price>1500</price>
</book>
</bookstore>
广告