includingPropertiesForKeys:
NSFileManager メソッドで言及したプロパティ (このメソッドの一部で NSArray として要求するファイル属性を意味します) にアクセスする方法がわかりません。
-(NSArray *)contentsOfDirectoryAtURL:<#(NSURL *)#>
includingPropertiesForKeys:<#(NSArray *)#>
options:<#(NSDirectoryEnumerationOptions)#>
error:<#(NSError *__autoreleasing *)#>
ファイルへの NSURL オブジェクトの配列を含む NSArray オブジェクトを取得します。
したがって、このプロパティを取得することはできません (方法がわかりません)。
そのプロパティを取得するには、次の構造を使用する必要があります。
NSArray *arrayOfNSURLs = [[NSFileManager defaultManager] contentsOfDirectoryAtURL:myFolderURL
includingPropertiesForKeys:@[NSURLContentModificationDateKey, NSURLVolumeIdentifierKey, NSURLLocalizedNameKey,NSURLLocalizedTypeDescriptionKey]
options:NSDirectoryEnumerationSkipsHiddenFiles
error:nil];
// I will call all below this 'second part'
id test;
for (id file in arrayOfNSURLs) {
if ([file isKindOfClass:[NSURL class]]) {
[file getResourceValue:&test forKey:NSURLContentModificationDateKey error:nil];
NSLog(@"%@ %@",file ,test);
}
}
ご覧のとおり、NSURL メソッドを使用する必要がありますgetResourceValue:forKey:error:
。しかし、ちょっと待ってください。NSFileManager
methodcontentsOfDirectoryAtURL:includingPropertiesForKeys:options:error:
でこのキーについて言及しているのは、includingPropertiesForKeys:
部分的にですか???
nil
一部の引数として入れようとしました...includingPropertiesForKeys:
が、キーの配列を追加することとnilを追加することに違いはありません.「2番目の部分」はとにかくコンテンツ変更キーを提供します.
だから、私の質問は簡単です: なぜcontentsOfDirectoryAtURL:includingPropertiesForKeys:options:error:
メソッドのキー引数にプロパティが必要なのですか? コードの 2 番目の部分なしで、このキーに記載されている情報を取得する方法はありますか?
ありがとう。