XSL 转换期间的 Unicode 字符

Unicode chars during XSL transformation

我正在 Java 程序中使用 XSL 进行 XML 转换。这是示例 XML

<root>
 <body>Body goes here &#x2019; with special characters</body>
</root>

我想将 XML 转换为以下内容:

<root>
 <body>Body goes here &amp;rsquo; with special characters</body>
</root>

如何将Unicode十六进制字符转换为Html实体代码?请帮助我。

提前谢谢你。

XSLT 中没有直接的方法来生成实体引用。您可以 "by hand" 使用禁用输出转义(或在 2.0 中,字符映射),但这是一项艰巨的工作。

如果您正在生成 HTML,并使用 Saxon,则有一个 xsl:output 属性

<xsl:output saxon:character-representation="entity;hex" xmlns:saxon="http://saxon.sf.net/"/>

http://www.saxonica.com/documentation/#!extensions/output-extras/serialization-parameters