-2

我想从~documentsObjective-c 中的用户目录中删除旧文件(15 天或更早)。有没有办法知道何时创建文件并随后删除它们?

4

1 回答 1

5

我不完全理解您的问题,但我假设您想要一种 Mac 应用程序识别旧文件并删除它们的方法。如果是这样,试试这个:

NSFileManager *fileManager = [[NSFileManager alloc] init];
NSArray *files = [fileManager contentsOfDirectoryAtPath:@"/samplePath/" error:NULL];

for (NSString *path in files) {
    BOOL isDir;
    if ([fileManager fileExistsAtPath:path isDirectory:&isDir] && !isDir) {
        NSDictionary *attr = [fileManager attributesOfItemAtPath:path error:NULL];
        NSDate *modDate = [attr objectForKey:NSFileModificationDate];
        //Do date math
    }
}

这将获得目录中每个日期的日期(只需@"/samplePath"用实际路径替换字符串)。然后,您可以进行日期数学运算以找出它是多久以前被修改的。或者,您可以替换NSFileModificationDateNSFileCreationDate以获取文件的创建时间。

于 2011-07-10T21:10:38.697 回答