2012-06-13 71 views
0

我想在我的iPhone應用程序上寫入文件。我的文件在我的項目的文件夾,但是當我嘗試去實現它:iOS:我無法寫入我的文件

NSString *myFile = [[NSBundle mainBundle] pathForResource:@"myFile" ofType:@"txt"]; 
NSLog(@"%@",myFile); 

我得到以下路徑:

2012-06-13 17:36:56.398 MyFileApp [610:15203 ] /用戶/劉松仁/庫/應用程序支持/ iPhone模擬器/ 5.1 /應用/ 1FFD4436-DCCA-4280-9E47-F6474BEE0183/MyFileApp.app/MYFILE.TXT

爲什麼?

感謝您的建議

+0

請注意,您絕對不應該在iOS上而不是在Mac OS X上寫入應用程序的包。 – bbum

回答

11

你問:

爲什麼?

這就是那個路徑,因爲那是存儲文件的地方。

在設備上它會有所不同。

請注意,您無法將文件寫入該文件夾。您也許應該改爲寫入應用程序的文檔文件夾:

//Get the documents folder 
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsPath = [paths objectAtIndex:0]; 

//Get the final path of your file. 
NSString *finalPath = @"myfile.txt"];  
//And actually write that file. 
[[NSFileManager defaultManager] createFileAtPath:finalPath contents:/*fileData as NSData*/ attributes:nil]; 
1

如前所述,您無法在實際設備上寫入主包。

您的其他問題:

當你在模擬器中運行的Xcode您的應用程序將在您的項目在你的情況下複製到文件夾在您的圖書館目錄..到:

/用戶/達米安/庫/應用程序支持/ iPhone模擬器/ 5.1 /應用程序/

您在模擬器中運行的每個應用程序都有一個文件夾。應用程序不會在實際編輯代碼的文件夾中運行。