2012-04-17 68 views
1

我正在加载可搜索的plist文件的参考应用程序。plist文件可能太大吗?

plist文件大约有6kb,大约有600个条目。

我一直在使用模拟器,一切正常,但是当我将它加载到设备上时,没有任何数据存在。只是一张空桌子。

我认为该文件可能太大,因为我可以加载一个plist 20条目,它在设备上加载罚款。

如果文件太大,整个应用程序不会崩溃?

有没有人有任何建议?

这是我载入我的plist文件

NSString* myFile = [[NSBundle mainBundle] pathForResource:@"myPlistFile" ofType:@"plist"]; 
array = [[NSMutableArray alloc] initWithContentsOfFile:myFile]; 
+0

我甚至试图将其转换为二进制文件,使其更小。 plutil -convert binary1 myPlistFile.plist – 2012-04-17 21:57:58

回答

3

这听起来像对我来说,要么你的plist中甚至没有得到所有复制到设备上,或者你正在使用大小写敏感文件命名。

首先看是否该文件存在于所有:

NSString *myFilePath = [[NSBundle mainBundle] pathForResource:@"myPlistFile" ofType:@"plist"]; 
BOOL exists = [[NSFileManager defaultManager] fileExistsAtPath:myFilePath]; 

检查布尔(使用调试器或日志记录,无论哪种方式)。如果该文件存在,那么我怀疑您在尝试访问文件名时使用了错误的大小写。文件名在iOS设备上区分大小写,与模拟器不同。例如,可以说你的plist被命名为myAwesomeStuff.plist。如果你试图访问模拟器上的myawesomestuff.plist,它会工作得很好。不是这样的设备。确保你的文件名使用正确的大小写。

+0

就是这样,我是一个笨蛋,谢谢! – 2012-04-17 22:12:21

+1

@MJesse:不,完全没有。苹果应该默认情况下使模拟器区分大小写。它发生在我们最好的人身上。 ;) – 2012-04-17 22:13:02