2011-05-20 110 views
0

我有這樣的代碼:目標C:問題目錄文件

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"File.plist"]; 


if([array writeToFile:path atomically: YES]){ 
    NSLog(@"write succesful");} 
else { 
    NSLog(@"write failed"); 
} 

我在文件夾中的資源創建一個文件「File.plist」,我想存儲一個NSMutableArray裏面。當我把這個方法在控制檯中的消息是「寫成功的」,但如果我改變

NSString *path = [documentsDirectory stringByAppendingPathComponent:@"FileAbstract.plist"]; 

路徑的消息不斷「寫成功的?爲什麼?我在路徑更改名稱。

+0

看起來像你創建了第二個文件,你必須在目錄看看? – 2011-05-20 17:07:54

+0

我如何查看目錄? – CrazyDev 2011-05-20 17:12:07

+0

您可以在模擬器文件夾中找到該應用程序,它通常位於'〜/ Library/Application Support/iPhone Simulator/4.3/Applications'中。 – 2011-05-20 17:13:52

回答

1

在這代碼是在文檔目錄下寫的,與項目中的資源文件夾無關你不能通過運行應用程序來更改資源文件夾中的文件在第一次運行中你已經編寫了文件File.plist,並且在第二次運行中你已經編寫了文件FileAbstract.plist,都在文檔目錄中,它們與資源文件夾中的File.plist沒有任何關係

編輯:讀取該文件的內容的數組:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"File.plist"]; 

NSArray *array = [NSArray arrayWithContentsOfFile:path]; 
+0

好的我明白了,我能看到File.plist嗎? – CrazyDev 2011-05-20 17:24:42

+0

如果我想讀這個文件?你有個例子嗎? – CrazyDev 2011-05-20 17:31:02

+0

在模擬器中,您可以輕鬆檢查文件。在設備上,我聽說可以通過iTunes同步/備份應用程序數據,但從未嘗試過自己。所以無法證實這一點。你可以用方法arrayWithContentsOfFile創建一個NSArray:path並檢查數組的內容。 – taskinoor 2011-05-20 17:34:01