2

我正在创建一个应用程序,用于从 Internet 下载文件并保存到文档目录中。由于用户保存了更多文件,该文档目录占用了巨大的内存。现在我决定删除用户最后没有访问的文件两个月。我想知道构建 Ios 中是否有任何选项可以根据文件修改日期查找文档目录下的文件列表?请帮助我。

4

3 回答 3

1

尝试这个。我认为该数组提供了带有修改日期的文件信息。

尝试根据日期比较创建一个函数并删除文件。

NSArray * arrayOfURLs = [fileManager contentsOfDirectoryAtURL:URL 
                                   includingPropertiesForKeys:@[NSURLIsDirectoryKey, 
                                                                NSURLNameKey, 
                                                                NSURLFileSizeKey, 
                                                                NSURLContentModificationDateKey,
                                                                NSURLLocalizedTypeDescriptionKey]
                                                      options:NSDirectoryEnumerationSkipsHiddenFiles 
                                                        error:nil];
于 2013-09-12T10:49:27.107 回答
1

获取 最后文件访问日期

#include <sys/stat.h>


-(NSDate *)getFileAccessLastDateOfFile:(NSString *)aFilePath{
    struct stat output;
    int ret = stat([aFilePath fileSystemRepresentation], &output);
    struct timespec accessTime = output.st_atimespec;
    NSDate *aDate = [NSDate dateWithTimeIntervalSince1970:accessTime.tv_sec];
    return aDate;
}
于 2015-05-28T05:53:24.607 回答
0

NSURL Class文档中,它写道:

NSURLContentModificationDateKey最近修改资源的时间,NSDate如果卷支持修改日期,则作为对象返回,如果不支持修改日期,则返回 nil。

然后使用 NSDate,timeIntervalSinceNow您将能够找到您的文件是否超过或少于 2 个月。

于 2013-09-12T11:16:32.773 回答