【发布时间】:2017-10-03 23:28:40
【问题描述】:
我正在使用 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。
【问题讨论】:
-
Excel 中存在这样的问题。如果即使像 Notepad++ 这样的小型项目在打开时也能正确识别出文件编码,微软应该会为他们无法在其应用程序中实现等效功能而感到尴尬。
标签: xml csv xslt utf-8 character-encoding