我不知道如何访问includingPropertiesForKeys:
我在 NSFileManager 方法中提到的属性(我的意思是我们在此方法中作为 NSArray 询问的文件属性):
-(NSArray *)contentsOfDirectoryAtURL:<#(NSURL *)#>
includingPropertiesForKeys:<#(NSArray *)#>
options:<#(NSDirectoryEnumerationOptions)#>
error:<#(NSError *__autoreleasing *)#>
我得到一个 NSArray 对象,其中包含一个文件的 NSURL 对象数组。
所以,我不能只得到这个属性(我只是不知道如何)。
我必须使用此构造来获取该属性:
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
方法contentsOfDirectoryAtURL:includingPropertiesForKeys:options:error:
中提到这个键的includingPropertiesForKeys:
部分原因???
我尝试将nil
其作为...includingPropertiesForKeys:
部分参数,添加键数组和 nil 之间没有区别,“第二部分”无论如何都会为您提供内容修改键。
所以,我的问题很简单:为什么方法中的键参数需要属性contentsOfDirectoryAtURL:includingPropertiesForKeys:options:error:
?有没有办法在我的代码中没有第二部分的情况下检索此键中提到的信息?
谢谢。