如何使用 Java 访问和修改 XML 数据
文档对象模型 (DOM) 提供了用于访问和编辑 XML 文档的标准接口在爪哇。以下是有关如何使用 DOM 读写 XML 文件的详细指南:
读取 XML 文件:
导入库: 首先导入必要的 XML 相关的库:
import javax.xml.parsers.*; import javax.xml.transform.*; import javax.xml.transform.dom.*; import javax.xml.transform.stream.*; import org.xml.sax.*; import org.w3c.dom.*;
实例化DocumentBuilderFactory:创建DocumentBuilderFactory的实例,负责创建DocumentBuilder对象:
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
创建 DocumentBuilder: 使用工厂获取用于解析 XML 文档的 DocumentBuilder 实例:
DocumentBuilder db = dbf.newDocumentBuilder();
解析 XML 文档: 在构建器上调用 parse() 来解析 XML 文件并创建一个 DOM 模型文档:
Document dom = db.parse(xmlFile);
访问 XML 元素: 使用 getElementsByTagName(tag) 检索与指定标签对应的节点:
NodeList nl = doc.getElementsByTagName(tag);
提取文本值:如果该节点有子节点,使用 getFirstChild().getNodeValue() 检索文本值:
String value = nl.item(0).getFirstChild().getNodeValue();
写入 XML 文件:
初始化文档:创建一个新的文档实例:
Document dom = db.newDocument();
创建根元素: 建立 XML 文档的根元素:
Element rootElement = dom.createElement("rootElement");
添加子元素: 将子元素追加到根元素并提供其文本内容:
Element childElement = dom.createElement("childElement"); childElement.appendChild(dom.createTextNode("text content")); rootElement.appendChild(childElement);
将根元素附加到文档:将根元素添加到文档:
dom.appendChild(rootElement);
实例化 Transformer: 创建一个 Transformer 实例将 DOM 模型转换为 XML 文档:
Transformer tr = TransformerFactory.newInstance().newTransformer();
设置转换器属性: 配置转换器以缩进 XML 并使用正确的编码:
tr.setOutputProperty(OutputKeys.INDENT, "yes"); tr.setOutputProperty(OutputKeys.METHOD, "xml"); tr.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
转换并保存XML: 将 DOM 源传递给转换器并指定保存为 XML 的目标文件:
tr.transform(new DOMSource(dom), new StreamResult(new FileOutputStream(outputFile)));
以上是如何使用 DOM 在 Java 中读写 XML 数据?的详细内容。更多信息请关注PHP中文网其他相关文章!