0

给定以下代码并且硬盘中的文件是图像,如何强制从硬盘中检索文件的特定顺序。如何修改下面的代码,以便即使硬盘中的顺序由于排序问题而发生变化,图像的检索也必须遵循特定的顺序,例如,现在 HD 中的文件按名称排序..few seconds早些时候,排序更改为通过日期或其他方式。

换句话说,如何以编程方式强制文件的检索始终按字母顺序或任何其他条件

代码

NSString *bundleRoot = [[NSBundle mainBundle] bundlePath];
NSFileManager *fm = [NSFileManager defaultManager];
NSArray *dirContents = [fm contentsOfDirectoryAtPath:bundleRoot error:nil];
NSString *pred = [NSString stringWithFormat:@"SOME TEXT 'iconxxx%@x.png' ", acx];
NSPredicate *fltr = [NSPredicate predicateWithFormat:pred];
NSArray *onlys = [dirContents filteredArrayUsingPredicate:fltr];
4

1 回答 1

0

NSFilemanager不负责对文件列表进行排序。使用谓词过滤后,您只需对数组进行排序。通常localizedStandardCompare用于像 Finder 或任何其他文件管理器一样进行排序。

// sort the filtered array
NSArray *sorted = [onlys sortedArrayUsingSelector:@selector(localizedStandardCompare:)];
于 2019-11-06T13:00:57.700 回答