gpt4 book ai didi

Java XML 解析器?

转载 作者:行者123 更新时间:2023-11-29 03:54:26 24 4
gpt4 key购买 nike

我目前正在将我用 Visual Basic .NET(2005 版本)编写的程序转换为 Java。它使用内置的 XML 方法来解析和生成用户保存的数据,Java 是否具有内置的等效功能,或者我是否必须更改文件处理实现? (我宁愿不这样做,我必须更改很多代码。)

最佳答案

是的,Java 可以解析 XML。这是一个示例,它接受一个包含 XML 的字符串并构建一个 Document从中取出对象:

DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
InputSource inputSource = new InputSource(new StringReader(xml));
Document document = documentBuilder.parse(inputSource);

然后您可以使用 XPath API 查询 dom。这是一个 tutorial/writeup关于它。

就将对象序列化为 XML 而言,官方实现是 JAXB,自 1.6 起它就是 Java 的一部分。 Here's一个简单的例子。它可以让您对 XML 进行序列化和反序列化。

您也可以手动创建一个 DOM 对象并向其添加节点,但这有点繁琐:

DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
Document document = documentBuilder.newDocument();

Element rootNode = document.createElement("root");

Element childNode = document.createElement("child");
childNode.setTextContent("I am a child node");
childNode.setAttribute("attr", "value");

rootNode.appendChild(childNode);
document.appendChild(rootNode);

关于Java XML 解析器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7153422/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com