当我使用以下代码时应用程序有效:
xulschoolhello.greeting.label = Hello World?
但是当我使用 Unicode 时,应用程序不起作用:
xulschoolhello.greeting.label = سلام دنیا ?
为什么不工作?
当我使用以下代码时应用程序有效:
xulschoolhello.greeting.label = Hello World?
但是当我使用 Unicode 时,应用程序不起作用:
xulschoolhello.greeting.label = سلام دنیا ?
为什么不工作?
我在 xul 文件的扩展中加载该字符串没有问题chrome://
。确保您没有覆盖编码(默认为 UTF-8)。请参阅此页面了解更多信息。
为了确保,将您的 XUL 的第一行更改为:
<?xml version="1.0" encoding='UTF-8' ?>
如果您在属性文件中使用它,请确保将 .properties 文件保存为 utf-8 格式。从属性文件 - XUL | MDN:
非 ASCII 字符、UTF-8 和转义
Gecko 1.8.x(或更高版本)支持以 UTF-8 编码的属性文件。您可以并且应该直接编写非 ASCII 字符而不使用转义序列,并将文件保存为不带 BOM 的 UTF-8。仔细检查文本编辑器的保存选项,因为许多默认情况下不这样做。有关更多详细信息,请参阅本地化扩展描述。
在某些情况下,使用转义序列来表达某些字符可能很有用或需要。属性文件支持以下形式的转义序列: \uXXXX ,其中 XXXX 是 Unicode 字符代码。例如,要在字符串的开头或结尾放置一个空格(通常会被属性文件解析器剥离),请使用 \u0020 。