我正在使用 XSLT 将 XML 转换为 CSV。我在 XSLT 中的输出行是:
<xsl:output method="text" encoding="UTF-8" />
XML 中有很多波兰语字母,这就是问题所在。当我使用 XML 工具插件从 Notepad++ 转换 XML 时,输出文件(未保存)正确显示波兰语字母,当您单击编码时,它会显示UTF-8 without BOM
. 当我将其另存为 CSV 时 - excel 不显示波兰语字母。当我将 Notepad++ 中的文件编码更改为UTF-8 with BOM
- 它在 Excel 中正常工作。
我以为这都是 Notepad++ 的问题,但是当我在 XmlSpy 中转换它时,输出文件也不正确,就像在 Excel 中一样。
我想知道我是否可以UTF-8 BOM
在文件的开头添加符号(来自 XSLT,而不是手动),但我能找到的只是如何删除它们,我什至不知道这是否能解决我的问题。我快要疯了。
顺便说一句,我正在使用 XSLT 1.0。我在 XmlSpy 中的编码是默认的,即 UTF-8。输入 XML 的编码也是 UTF-8。
由于您使用的是 XSLT 1.0,您可以
显式输出...
<xsl:template match="/">
<xsl:value-of select="''"/>
<xsl:apply-templates/>
</xsl:template>
如果您使用的是 XSLT 2.0,则可以只使用byte-order-mark="yes"
on xsl:output
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句