2011-12-13 58 views
0

我hv花了一段時間,但沒有運氣在以下問題:關於NSSearchPathForDirectoriesInDomains

我試圖訪問文檔目錄。

下面的代碼完美地工作。有人能告訴我什麼是 最後一個對象之間的區別objectAtIndex:0

NSArray *searchPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentPath = [searchPaths lastObject]; 

NSString *documentPath = [searchPaths objectAtIndex:0]; 

最密切的問題是How to get URL for application's document directory iPhone,但它並沒有解釋lastObject和objectAtIndex之間的區別: 0。

我已閱讀通過Apple Developer Library。它只會說'這個方法返回的目錄可能不存在。此方法只是爲您提供所請求目錄的適當位置。根據應用程序的需要,開發人員可以創建適當的目錄,也可以在兩者之間。有人請幫忙,thx。

回答

3

在這種情況下,有[searchPaths lastObject][searchPaths objectAtIndex:0]沒有什麼區別,因爲searchPaths只包含一個條目。用戶域只包含一個文檔目錄。

如果你試試這個,你會得到不同的結果:

NSArray *searchPaths = NSSearchPathForDirectoriesInDomains(
    NSApplicationDirectory, NSAllDomainsMask, YES); 
+0

戈查,感謝了很多人。 – noobar

0

searchPaths可能包含一個以上的目錄,如果你用NSAllDomainsMask看。

由於Xcode中5,最好的做法是:

NSString *documentPath = [searchPaths firstObject];