Java XSL转换期间的Unicode字符

Java XSL转换期间的Unicode字符,java,xml,xslt,unicode,Java,Xml,Xslt,Unicode,我正在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 character

我正在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>

身体到这里来&;rsquo;有特色
如何将Unicode十六进制字符转换为Html实体代码?请帮帮我


提前感谢。

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

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

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