我正在尝试包含我的应用程序的国际化,并且仅出于测试目的,我在Localizable.string文件中添加了一个简单的行。
这是我的整个文件:
“测试区域设置”=“测试区域设置”
当我尝试运行我的应用程序时,我收到此错误:
Localizable.strings:0:错误:验证失败:数据不能 阅读,因为它已被破坏。
我尝试将“文本编码”更改为UTF-16,但没有解决。
任何想法?
提前致谢。
答案 0 :(得分:57)
如果这是您的整个文件,请在末尾添加分号。将其更改为:
“测试区域设置”=“测试区域设置”;
答案 1 :(得分:43)
要获得更详细的信息,您可以从命令行使用Property List实用程序:
plutil -lint <your_strings_file>.strings
-lint
开关用于检查语法。如果您有错误,您将获得行号和更多信息,并且通常可以更好地指导如何解决问题。
答案 2 :(得分:7)
您可以使用以下脚本验证Localizable.strings文件:
答案 3 :(得分:4)
就我而言,就像这样:
/* Comment for Very Long Sentence */
"Very Long Sentence Very Long Sentence Very Long Sentence Very Long Sentence " =;
"Very Long Sentence Very Long Sentence Very Long Sentence Very Long Sentence ";
(注意第一行末尾的' =; '而不是' = ')
希望它有所帮助...
答案 4 :(得分:1)
在我的情况下,它是字符串中的括号 - 我需要在\“之前添加斜杠。
答案 5 :(得分:0)
我已经制作了一个小脚本来使用plutil检查整个文件夹.strings文件。