我打算编写一些代码,其逻辑基于在我的应用程序的Documents文件夹中测试特定文件的创建日期。事实证明,当我调用 - [NSFileManager attributesOfItemAtPath:error:]时,NSFileCreationDate不是提供的属性之一。
是否无法发现文件的创建日期?
感谢。
答案 0 :(得分:8)
fileCreationDate确实是字典的一部分。这是一个传递文件URI并从文件中获取一些属性的方法:
- (NSDictionary *) attributesForFile:(NSURL *)anURI {
// note: singleton is not thread-safe
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *aPath = [anURI path];
if (![fileManager fileExistsAtPath:aPath]) return nil;
NSError *attributesRetrievalError = nil;
NSDictionary *attributes = [fileManager attributesOfItemAtPath:aPath
error:&attributesRetrievalError];
if (!attributes) {
NSLog(@"Error for file at %@: %@", aPath, attributesRetrievalError);
return nil;
}
NSMutableDictionary *returnedDictionary =
[NSMutableDictionary dictionaryWithObjectsAndKeys:
[attributes fileType], @"fileType",
[attributes fileModificationDate], @"fileModificationDate",
[attributes fileCreationDate], @"fileCreationDate",
[NSNumber numberWithUnsignedLongLong:[attributes fileSize]], @"fileSize",
nil];
return returnedDictionary;
}
答案 1 :(得分:1)
根据Apple's reference,{+ 1}}可在2.0 +中找到:
NSFileCreationDate文件中的密钥 属性字典的值 表示文件的创建日期。
相应的值是NSDate 对象
适用于iPhone OS 2.0及更高版本。
在NSFileManager.h中声明。