从XCode中的.strings文件读取字符串

时间:2011-06-27 19:34:55

标签: iphone objective-c ios

我是iOS新手,我有一个.strings文件,其中存储了我的应用程序打开时查看的免责声明。

但是,我无法弄清楚如何从disclaimer.strings文件中调用“免责声明”字符串。

帮助将不胜感激。此外,赞赏相关页面的链接!

2 个答案:

答案 0 :(得分:7)

嗯,首先,不是使用.string文件,如果只有免责声明,那么我只会使用txt文件:

NSString * fName = [[NSBundle mainBundle] pathForResource:@"disclaimer" ofType:@"txt"];
if (fName) {
    self.disclaimer = [NSString stringWithContentsOfFile: fName];
}

另一方面,如果您想为每个国家/地区制作本地化版本,只需将其添加到“Localizable.strings”文件即可。你的代码只是:

self.disclaimer = NSLocalizedString(@"disclaimer", @"Disclaimer text for each country");

然后使用genstrings收集所有可本地化的字符串,或者创建“Localizable.strings”(File \ New \ New File \ ioS \ Resource \ Strings File),然后你可以编辑/添加文本:

"disclaimer" = "This is the English version of our disclaimer..."; 

然后您创建一个新的语言版本的Localizable.strings并使用该国家/地区的免责声明进行编辑。

答案 1 :(得分:2)

本地化的命名约定需要一个Localizable.strings文件,然后您可以在该文件下提供不同的语言版本。

最好的方法是从代码中使用语句开始,例如返回免责声明的本地化内容:

NSLocalizedString(@"Disclaimer",@"Disclaimer")

下一步是从类目录的命令行调用genstrings:

genstrings -o en.lproj *.m