Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试运行 XSLT 转换,但像 ëöï 这样的字符被替换为文字 '?' 在输出中(我用十六进制编辑器检查)。源文件具有正确的字符,样式表具有:
<xsl:output encoding="UTF-8" indent="yes" method="xml"/>
我还缺少什么?
如果这很重要,我正在使用撒克逊人作为变压器。
问题很可能出在您调用变压器的方式上。我的猜测是,如果您使用java -jar saxon.jar调用它,它会正常工作...
一般来说,当您使用带有 InputStream/OutputStream 的 XML 工具时,这些工具会确保编码是正确的。
当您混合使用 Streams 和 Writers 时,您必须确保从一个到另一个的编码与您告诉 XSLT 处理器生成的编码相匹配。始终明确设置编码。可能有默认值,但在编码方面,它们往往是错误的。