Objective c 列出本地化文件

Objective c 列出本地化文件,objective-c,nsbundle,localized,Objective C,Nsbundle,Localized,Konichiwa乡亲们, 我正在用一个非标准的过程来读取项目中的一堆本地化xml 我的目的是递归地读取所有这些文件,以便为coredata sqlite数据库提供数据,从而创建同一数据库的各种基于lang的版本 首先,我尝试了一种老派的技巧,比如: NSString *bundleRoot = [[NSBundle mainBundle] bundlePath]; NSArray *dirContents = [[NSFileManager defaultManager] contentsOf

Konichiwa乡亲们, 我正在用一个非标准的过程来读取项目中的一堆本地化xml

我的目的是递归地读取所有这些文件,以便为coredata sqlite数据库提供数据,从而创建同一数据库的各种基于lang的版本

首先,我尝试了一种老派的技巧,比如:

NSString *bundleRoot = [[NSBundle mainBundle] bundlePath];
NSArray *dirContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:bundleRoot error:nil];
NSArray *onlyXMLs = [dirContents filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"self ENDSWITH '.xml'"]];
for (NSString *tString in onlyXMLs) { 
   /* stuff */
}
一点运气都没有,因为它会弹出我的项目中所有非本地化的XML,仅此而已

所以我想知道是否有办法让那些该死的非本地化XML出现

提前谢谢

如果你有疑问或疑问,不要做陌生人,给我写信

-k-

好的,解决了

对于那些正在寻找问题答案的人,以下是解决方案:

    NSArray *onlyXMLs = [[NSBundle mainBundle] pathsForResourcesOfType:@"xml" inDirectory:nil forLocalization:@"English"];
请记住,携带所需语言的参数 必须始终与项目中包含所需文件的.plist目录相同

因此,如果您有一个包含所需内容的English.plist,那么它也必须是要传递的名称字符串(如上面的示例所示),否则如果您处理的是en.plist,@“en”应该是字符串

就这样,就这样