【问题标题】:How to delete old files from document directory in objective-c? [closed]如何从objective-c的文档目录中删除旧文件? [关闭]
【发布时间】:2011-10-02 06:53:03
【问题描述】:

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

【问题讨论】:

  • 我想要一个披萨。有什么问题吗?
  • 您想为此在 Objective-C 中开发一个应用程序吗?
  • 对不起,我只需要一个函数来从我的应用程序中删除旧文件(相机捕获)。

标签: objective-c cocoa nsdocumentdirectory


【解决方案1】:

我不完全理解您的问题,但我假设您希望 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" 替换为实际路径)。然后,您可以进行日期数学运算以找出它是多久以前被修改的。或者,您可以将 NSFileModificationDate 替换为 NSFileCreationDate 以获取文件的创建时间。

【讨论】:

    猜你喜欢
    • 2023-04-03
    • 2012-10-21
    • 1970-01-01
    • 1970-01-01
    • 2015-10-08
    • 2011-08-06
    • 2013-02-07
    • 2011-08-14
    • 1970-01-01
    相关资源
    最近更新 更多