gpt4 book ai didi

java - XML 格式的 Java 字符串操作

转载 作者:行者123 更新时间:2023-11-29 07:19:18 24 4
gpt4 key购买 nike

我正在开发一个具有 node(computer) 对象的插件,其属性如下:

String name
String description
String labels
Launcher computerLauncher
...

我可以将 node(computer) 对象转换为 XML 格式的字符串,例如:

String xml = jenkins.instance.toXML(node);

这给了我一个字符串:

<name>Computer1</name>
<description>This is a description</description>
<labels>label1 label2</labels>
<launcher>windows.object.launcher.12da1</launcher>

然后我可以往回走:

Node node = jenkins.instance.fromXML(xml);

我没有更改节点属性的方法,所以我想将其转换为 XML,更改 som 属性,然后再次将其设为节点。

我看到两个选项

  1. 使用一些 String 方法处理 XML 以替换 <> 标记之间的所有内容。

  2. 尝试将 XML 字符串转换为类似于真实对象的内容并以这种方式对其进行操作。

不确定什么是最好的方法。

最佳答案

既然已经支持使用 Java 的 DOM(文档对象模型)API 的所有内容,为什么还要发明一些新东西?

使用 DocumentBuilderFactory获取 DocumentBuilder 并创建 Document实例。有了这个,您可以在 toXML 方法中创建“节点”对象(请注意,您发布的示例实际上是不是有效的 XML,它缺少根节点),将文档序列化为字符串可能是通过使用 Transformer 完成.

使用 DOM API,您还可以修改现有元素的属性。

在 DocumentBuilder 的帮助下,使用 DocumentBuilder#parse 再次实现从 XML 字符串解析 Document 实例。

如果您的 DOM 操作不太复杂,这应该是实现您的目标的一种不错、快速的方法。

关于java - XML 格式的 Java 字符串操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6683671/

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