2012-04-17 29 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