iphone - 构建失败,Localized.strings 中的验证失败

标签 iphone localization xcode4

我制作了 Localized.string 文件并编译了我的项目(我的源代码使用 NSLocalizedString 宏函数),但由于 Localized.string 文件,我的项目无法编译。如果我注释 Localized.string 文件中的所有行,我的项目就会成功编译。

因此,问题与 Localized.string 文件有关。我在Google上搜索了一下,发现UTF-8文件(Localized.string)已更改为UTF-16。虽然我尝试过这个……但这个方法也行不通。

================================================== ===============

我的 Localized.string 文件包含:

"LOCAL_APP_GRADE" = "Basic"

"LOCAL_APP_LAST_UPDATED_DATE" = "2011/04/20"

"LOCAL_MAIN_MENU_TITLE" = "Main Menu"

在我的源代码中:

NSLocalizedString( @"LOCAL_MAIN_MENU_TITLE", @"" );

错误消息:

Copy .strings file Error Validation failed: The data couldn't be read because it has been corrupted.

最佳答案

我假设这里使用的是 Xcode 4。仔细检查文件检查器中每个 Localization.string 文件的编码显示内容。当我遇到该错误时,这是​​由于其中一个文件被读取为 Mac Roman 而不是 UTF-16。一旦我更改了编码,警告就消失了。一开始让我抓狂的是这个警告只发生在 Xcode 4 中。Xcode 3 没有给出它。

您的 .string 文件的格式也存在问题。所有行都应以分号结尾。

"LOCAL_APP_GRADE" = "Basic";
"LOCAL_APP_LAST_UPDATED_DATE" = "2011/04/20";
"LOCAL_MAIN_MENU_TITLE" = "Main Menu"; 

不过,我认为这不是警告的原因。至少我从未见过对此的警告。它通常仅在运行时显示在应用程序中而不是主菜单中显示 LOCAL_MAIN_MENU_TITLE 时。如果构建过程确实检查分号,那就太好了。编辑文件时很容易错过添加一项。

关于iphone - 构建失败,Localized.strings 中的验证失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5683803/

相关文章:

iphone - iOS UIScrollView 取消 UIButton 触摸滚动

iphone - iphone sdk上网格布局中的图像

c# - 每种语言的 .NET 本地化项目结构子文件夹

c# - .resx 本地化不适用于 ASP.Net - C#

objective-c - 将视频添加到启动画面或应用程序的第一个 View 中(IOS xcode 4.0)

iPhone 网页版,推荐px 还是%?

iphone - iPhone声音:在播放时调整音频文件的播放速度

c# - 在 UWP 中使用 PCL resx 字符串

Xcode 4 变得非常慢并且杀死了我的硬盘

ios - 如何恢复完整的 Xcode 4 界面?