gpt4 book ai didi

java - 将 XML 自闭标记替换为空标记

转载 作者:数据小太阳 更新时间:2023-10-29 02:48:14 26 4
gpt4 key购买 nike

我必须比较 XML 数据。有两个来源-

  • 网络服务
  • XML 文件

我没有看到任何简单的方法可以在相同的类中转换它们并使用 equals 方法。

使用 Web 服务的类是自动生成的,WSDL 一点也不简单。

所以我读取来自 Web 服务的响应,读取相应的文件,将它们转换为具有相同格式(删除空格、\n\r 字符等)的字符串,然后使用 String.equals() 方法。

问题是 Web 服务的空标签是这样写的:

<EmptyTag/>

但提供的文件包含这种空标签:

<EmptyTag></EmptyTag>

好的,有一种方法可以手动准备所有提供的文件,但我不喜欢它。谁知道,如何将空标签转换为相同的样式?如果有任何关于如何简化流程的想法 - 欢迎您;)

更新

我不解析 xml。文件的数据刚刚被读取并转换为预期的格式。Web 服务响应中的对象结构通过以下方式转换为 xml 字符串:

    marshaller.marshal(new JAXBElement<response_class_name>(new QName("response_class_name"),
response_class_name.class, response_object), stringWriter);

最佳答案

对于 Java,我会使用 XMLUnit比较文件,因为它使用它们的结构而不是字符串来比较 xml 文件(它可能会也可能不会忽略空格,具体取决于设置)。

关于java - 将 XML 自闭标记替换为空标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5939165/

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