xml - 使用多种语言呈现 XML 文档

标签 xml internationalization xslt

我有一个 XML 页面,其中包含各种语言的一些元素 - 阿拉伯语、英语、中文、日语。我应该为此选择哪种编码格式?如果我尝试使用 XSL(使用 utf-8 或 ISO-8859-6 或 ISO-2022-JP)呈现 XML,我会收到此错误:

An invalid character was found in text content.

如何解决?

谢谢。

最佳答案

UTF-8 是唯一可以处理所有这些字母的编码。它也是 XML 的默认编码,也是唯一对现代应用程序有意义的编码。 (无论如何,对于存储/在线;对于内部处理,您的语言的字符串类型更有可能是 UTF-16 或 32。)

从错误看来,您的输入文件有问题,而不是您选择的输出编码有问题。也许它是用 UTF-8 以外的其他编码编码的,但忘记包含 <?xml encoding?>。声明这样说。或者可能存在无效的 ISO-2202-JP 转义序列? (这是一种可怕的编码。)

你应该尝试将输入文件加载到解析 XML 的东西(例如 Firefox 或 IE)中,看看它会出现什么错误(如果有的话)。

(您不能在单个 XML 文件中混合编码。如果您将来自不同来源的字节字符串吐出到 XML 中,您就已经迷路了。这个 XML 是如何生成的?)

关于xml - 使用多种语言呈现 XML 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2599249/

相关文章:

spring-boot - 本地化 : Load translation file dynamically

.net - 支持拉丁美洲/加勒比地区使用的西类牙语

xml - 使用 Teiid 中的 xpath 连接多个属性与节点值的串联

xslt - 为什么我不能在 XSL 中获取与应用模板一起使用的参数?

C# 对象到 XmlElement

python - 制作一个 wxPython 应用程序多语言

c# - 如何读取 XML 文档并将其值附加到组合框和文本框

xml - 添加 XSD 时 XSLT 转换失败

java - 从 JTextArea 中的 xsl 文件打印 '<xsl:message>'

sql - 选择具有命名空间的列作为 XML