在Java中无法直接输出Document
对象,因为Document
对象表示一个XML文档的根节点,它本身并不包含任何可输出的内容。
如果你想将Document
对象的内容输出到控制台或文件,可以使用Transformer
类将Document
对象转换为字符串或文件。
下面是一个示例代码,演示如何将Document
对象转换为字符串并输出到控制台:
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
public class Main {
public static void main(String[] args) {
try {
// 创建一个DocumentBuilder对象
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
// 创建一个Document对象
org.w3c.dom.Document document = builder.newDocument();
// 创建根节点
org.w3c.dom.Element rootElement = document.createElement("root");
document.appendChild(rootElement);
// 创建子节点
org.w3c.dom.Element childElement = document.createElement("child");
childElement.setTextContent("Hello, World!");
rootElement.appendChild(childElement);
// 创建Transformer对象
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
transformer.setOutputProperty(OutputKeys.INDENT, "yes"); // 设置输出格式化
// 将Document对象转换为字符串
DOMSource source = new DOMSource(document);
StreamResult result = new StreamResult(System.out);
transformer.transform(source, result);
} catch (Exception e) {
e.printStackTrace();
}
}
}
运行以上代码,将会输出以下内容:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<root>
<child>Hello, World!</child>
</root>
通过上述示例代码,你可以看到Document
对象的内容已经成功转换为字符串并输出到控制台。如果你想将其输出到文件,只需将StreamResult
构造函数的参数改为指定的文件路径即可。