2012-06-20 45 views
0

這是推動我瘋了......文件管理器 - 未找到文件 - 目標C

有了這個簡單的代碼,我不斷收到我的iPad設備上未找到文件...

NSFileManager *filemgr; 

    filemgr = [NSFileManager defaultManager]; 

    if ([filemgr fileExistsAtPath: @"scoreCards.dgs" ] == YES) 
     NSLog (@"File exists"); 
    else 
     NSLog (@"File not found"); 

Xcode

我錯過了什麼嗎?

回答

3

你需要使用NSBundle類的pathForResource:ofType:方法來獲取資源文件的路徑。

NSString *path = [[NSBundle mainBundle] pathForResource:@"scoreCards" ofType:@"dgs"]; 
if ([filemgr fileExistsAtPath:path ] == YES) {} 
+0

但是現在我無法寫入該文件 –

+0

在運行時無法寫入資源文件。如果你想寫一個文件,那麼你首先需要將它複製到其他目錄,可能在文檔目錄中。您的資源文件在運行時不會改變。 – taskinoor

+0

你可以編輯你的答案來解釋我將如何做到這一點 –

1

假設你的文件是捆綁在一起的應用程序,你可以使用:

NSFileManager *filemgr; 
filemgr = [NSFileManager defaultManager]; 

NSString* filePath = [[NSBundle mainBundle] pathForResource:@"scoreCards" ofType:@"dgs"] 
if ([filemgr fileExistsAtPath: filePath ] == YES) 
...