2011-05-12 48 views
1

我想知道什麼是使用NSArray writeToFile保存文件時的默認路徑:atomically:method ...?writeToFile路徑?

[array writeToFile:@"myFile.plist" atomically:YES]; 

10X

+0

在模擬器中,它在我的HD上寫入'/'。 – 2011-05-12 08:46:22

+0

Ntg將作爲默認路徑提供 – ajay 2011-05-12 08:46:40

+0

@Nick - nice :)和設備上? @ AAAA- Ntg? – Rizon 2011-05-12 08:54:02

回答

1

我執行以下代碼:

if ([@"asdasdasd" writeToFile:@"foo123456.txt" atomically:YES]) { 
    NSLog(@"+++"); 
} else { 
    NSLog(@"---"); 
} 

模擬器上的文件foo123456.txt我在我的HD根彈出。控制檯打印+++,操作成功。

在設備失敗時,打印---

+1

writeToFile:自動確定不推薦使用NSString,但不適用於NSArray。 – Rizon 2011-05-12 08:56:17

+0

@Rizon混合設備與SIM卡,哈哈,我批准你編輯,現在我不能編輯我自己的帖子:) – 2011-05-12 08:57:26

+0

:D,所以這不是你的意思? – Rizon 2011-05-12 09:05:29

4

這將節省您的文檔目錄中的文件。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *basePath = [paths objectAtIndex:0]; 

這是您的文件將被保存的路徑。

+0

?因爲在模擬器上,不幸的是你錯了 – Rizon 2011-05-12 08:57:59

0

使用此代碼。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 

NSString *documentsDirectory = [paths objectAtIndex:0]; 

plistpath = [[NSString alloc] initWithString:[documentsDirectory stringByAppendingPathComponent:@"Product.plist"]]; 

然後

[array writeToFile:path atomically:YES]; 

[Whatever [Array or Dictionary] you want to Write in Plist] 

如果現在還沒有創建的plist然後檢查你的數組或字典是否必須是空的。