我在使用 javax.xml.transform.Transformer
时遇到问题。
我正在尝试创建一个 XML 文档,其中一个属性是 HTTP 链接,其中包含用于查询的 &
。在我调用了 transform()
方法之后,所有 &
字符都变成了 &
。
那么有什么方法可以配置 Transformer 不将 &
转换为 &
吗?提前致谢。
编辑
在我尝试创建的 xml 文档中,属性之一是带有查询字符串的 http 链接。所以我想要的结果是像
<Notification url="http://www.xyz.com/notify.jsp?param1=123¶m2=345/>
但我现在得到的是
<Notification url="http://www.xyz.com/notify.jsp?param1=123&param2=345/>
因为我必须将 xml 文档转换为 String 并通过套接字发送它。所以我不想将 &
转换为 &
作为最终结果。
最佳答案
After I've invoked transform method, all the
&
characters become&
这正是必须发生的事情。
是什么让您假设 <div>A & B</div>
是正确的 XML/HTML 和类似 <div title="A & B" />
的东西不是吗?
&
必须在 绝对所有地方 进行转义,包括属性值,例如 href
.
关于Java xml Transformer转义&,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4552562/