gpt4 book ai didi

ios - 如何在iOS中按创建日期对文档目录中的文件进行排序?

转载 作者:行者123 更新时间:2023-12-01 17:26:16 28 4
gpt4 key购买 nike

我有一个NSMutableArray,可从iOS的文档目录中检索文件。

我使用以下代码从文档目录中检索了文件。

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSError * error;
self.array = [[NSMutableArray alloc] init];

self.array = (NSMutableArray *)[[NSFileManager defaultManager] contentsOfDirectoryAtPath:documentsDirectory error:&error];

然后我在 UITableView中显示文件列表。
但是,按字母顺序显示。

我想显示它 (按文件的创建日期排序)。

编辑

这是我写的 ViewWillAppear
- (void)viewWillAppear:(BOOL)animated
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSError * error;
self.array = [[NSMutableArray alloc] init];

self.array = (NSMutableArray *)[[NSFileManager defaultManager] contentsOfDirectoryAtPath:documentsDirectory error:&error];

[self loadData];
}

- (void) loadData
{
self.sortedFileList = [self.array mutableCopy];
[self.sortedFileList sortUsingComparator:^NSComparisonResult(id obj1, id obj2) {
NSDate* d1 = [[NSFileManager defaultManager] attributesOfFileSystemForPath:obj1 error:nil][@"fileCreationDate"];
NSDate* d2 = [[NSFileManager defaultManager] attributesOfFileSystemForPath:obj2 error:nil][@"fileCreationDate"];
return [d1 compare:d2];
}];

}

而且它不按日期排序。

我怎样才能做到这一点?

感谢您的任何建议和帮助。

最佳答案

您需要NSFileManager获取每个文件的属性(attributesOfItemAtPath:error:)。这将返回该文件的字典,您可以使用fileCreationDate获取创建日期。然后,您可以执行排序。

关于ios - 如何在iOS中按创建日期对文档目录中的文件进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17277762/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com