提高Xcode中的文本文件读取速度?

时间:2012-05-05 04:37:10

标签: objective-c xcode full-text-search nsbundle

我目前正在开展一个涉及大量文本文件阅读的项目。我需要将文件的内容放入NSStrings中,以便我可以进一步操作它们。我正在使用的是什么:

NSString *file = [[NSBundle mainBundle] pathForResource:fileName ofType:@"txt"];
NSString *fileContents = [NSString stringWithContentsOfFile:file encoding:NSUTF8StringEncoding error:nil];

它运作良好,但随着我的项目增长,文本文件的数量也增加了。我开始认为应该有一种更有效的方式来搜索项目中包含的文本文件。

在很多情况下,我确切地知道要搜索的文件。我根据需要阅读的时间将文件组织到组文件夹中。有没有办法缩小初始文件搜索的范围?当我知道我需要的文件在更具体的级别上时,似乎每次搜索整个应用程序包都是毫无意义的。

有没有办法搜索群组而不是捆绑?我可以以某种方式从搜索中排除某些文件吗?据我所知,为此上下文定义自定义包不适合使用NSBundle功能。

2 个答案:

答案 0 :(得分:1)

您是否查看了方法-[NSBundle pathForResource:ofType:inDirectory:]

答案 1 :(得分:0)

我有几乎相似的情况,为了更多的优化,我已经将所有资源文件保存在字典中,并带有一些键,

你可以试试

1 - 在我们的应用程序中,您可能有某种模式,或者您可以找到主要组,

2 - 每个组都有多个字典,而在组内,您可以存储文件名

3 - 正如肯建议的那样 - [NSBundle pathForResource:ofType:inDirectory:]