我正在我的可可应用程序中尝试这个来获取系统中目录/文件的信息。此方法返回我列出了一些关键属性的字典
-(NSDictionary *) metadataForFileAtPath:(NSString *) path {
NSURL *url = [[[NSURL alloc] initFileURLWithPath:path] autorelease];
MDItemRef itemRef = MDItemCreateWithURL(NULL, (CFURLRef)url);
NSArray *attributeNames = (NSArray *)MDItemCopyAttributeNames(itemRef);
NSDictionary *attributes = (NSDictionary *) MDItemCopyAttributes(itemRef, (CFArrayRef) attributeNames);
CFRelease(itemRef);
// probably it is leaking memory (attributeNames and attributes), better check with Instruments
return attributes;
}
另一种方法...
NSDictionary *dict = [self metadataForFileAtPath];
NSString *date = [dict objectForKey:kMDItemFSCreationDate];
当我这样做时,我收到一条警告消息“不兼容的指针类型将'const CFStringRef'(又名'const struct __CFString *const')发送到'id'类型的参数”我正在尝试将它们类型转换为字符串,但它仍然存在。我没有找到我错的地方。