目錄的作用 目錄與文件構成了文件系統的層次結構。目錄使文件更易于存取,管理,使用戶可以將不同種類,不同功能的文件分類存儲。
目錄的內容 目錄包含了一系列的目錄項。每個目錄項由文件名和指向文件屬性的指針組成。 通過NSFileManager的contentsOfDirectoryAtPath方法可以獲取目錄的內容。
NSFileManager- (nullable NSArray<NSString *> *)contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)error獲取目錄下所有文件的文件名并將文件名放入列表中。 參數path為目錄路徑,error在獲取出錯時輸出錯誤信息。 方法執行成功則返回文件名列表,執行失敗則返回nil,并將錯誤放入error中。
舉例
NSString *dir=NSHomeDirectory();NSError *error=nil;NSFileManager *manager=[NSFileManager defaultManager];NSArray *arr=[manager contentsOfDirectoryAtPath:dir error:&error];NSLog(@"%@",arr);輸出:
( ".com.apple.mobile_container_manager.metadata.plist", ".DS_Store", Documents, Library, tmp)ios在提供了contentsOfDirectoryAtPath方法的同時,還提供了subpathsOfDirectoryAtPath方法,用于獲取目錄及其子目錄下所有文件的名字,并將文件名放入列表中。
- (nullable NSArray<NSString *> *)subpathsOfDirectoryAtPath:(NSString *)path error:(NSError **)error參數path為目錄路徑,error在獲取出錯時輸出錯誤信息。 方法執行成功則返回文件名列表,執行失敗則返回nil,并將錯誤放入error中。
舉例
NSString *dir=NSHomeDirectory();NSError *error=nil;NSFileManager *manager=[NSFileManager defaultManager];arr=[manager subpathsOfDirectoryAtPath:dir error:&error];NSLog(@"%@",arr);輸出:
( ".com.apple.mobile_container_manager.metadata.plist", ".DS_Store", Documents, Library, "Library/.DS_Store", "Library/Caches", "Library/Caches/Snapshots", "Library/新聞熱點
疑難解答