我有一个英文的XML文件,我翻译成意大利语和法语。
在我的项目xcode4
中我添加了它们,但由于文件名相同,我不知道如何从代码中调用它们。
对于字符串,有NsLocalizedString
但是对于文件,你是如何做到这一点的?
答案 0 :(得分:1)
pathForResource:ofType:
返回由指定名称和文件扩展名标识的资源的完整路径名。
方法首先在指定包的非本地化资源目录中查找匹配的资源文件。 (在Mac OS X中,此目录通常称为资源,但在iOS中,它是主要的捆绑目录。)如果找不到匹配的资源文件,则它会查找任何可用语言特定的顶级“ .lproj“目录。 (特定于语言的目录的搜索顺序对应于用户的首选项。)它不会通过任何这些位置的其他子目录进行递归。有关更多详细信息,请参阅国际化编程主题。
(强调补充)
所以你要使用:
NSString *path = [[NSBundle mainBundle] pathForResource:@"MyFile" ofType:@"xml"]
前提是您的文件是使用Xcode文件检查器中的本地化工具进行本地化的,该文件检查器会自动将文件放入正确的*.lproj
文件夹中。