gpt4 book ai didi

javax Transformer 保留转义实体

转载 作者:行者123 更新时间:2023-12-02 08:17:13 24 4
gpt4 key购买 nike

经过多次尝试失败,我最终放弃了xslt的改造(有兴趣的可以在这里查看我的问题:don't want xslt intepret the entity characters)。现在我正在研究 javax Transformer 试图解决这个问题。

问题是我想在 xml 和 html 中保留撇号 ' 的转义:

< cell i='0' j='0' vi='0' parity='Odd' subType='-1'> &#34;String&#39;</cell> 

输出是我不想要的:

    < td nowrap="true" class="gridCell" i="0" j="0">"String'< /td>

我想要的结果如下:

    < td nowrap="true" class="gridCell" i="0" j="0">&#34;String&#39;< /td>

我不知道我们是否可以使用方法transform来做到这一点,我看到一个类似的问题,但他需要相反的东西:How Do You Prevent A javax Transformer From Escaping Whitespace?

非常感谢您的帮助,谢谢!

最佳答案

严格来说,''' 之间的 XML 解析器没有区别' 在文本节点中,在属性中略有不同,因为该值必须括在 "' 之间;如果您已将其括起来' 中的属性值,您必须使用实体在值中指定撇号,XML 序列化程序也会执行相同的操作。

我对 Java 中的 XML 处理有点生疏,但我知道在 C# 中,您可以让您的转换生成一个 XML 文档对象,并创建一个继承自 XmlWriter 类的类,以按照您的意愿序列化它,方法是覆盖“WriteString”方法。希望您可以在 Java 中做类似的事情,可能通过实现 Result 接口(interface),或者传递一个您可以使用的 DOMResult 。我不记得你通常如何在 java 中序列化 Document,但它应该是你可以操作或重写的东西。

关于javax Transformer 保留转义实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6135720/

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