0
NSFileManager *fileManager= [[NSFileManager alloc]init];
    NSDirectoryEnumerator *myEnumerator= [fileManager enumeratorAtPath:[[theFolder URLByDeletingLastPathComponent]path]];
    int f,size=0;
    NSMutableArray *dirList=[[NSMutableArray alloc]init];
    NSString *fpath;
    while (fpath=[myEnumerator nextObject])
    {
        [dirList addObject:fpath];

    }
    [dirList sortedArrayUsingSelector:@selector(localizedStandardCompare:)];

dirList 包含像“name_0012345.tif”这样的文件名。尽管进行了排序,但数组不包含我在查找器中按名称排序的顺序中的文件。

4

2 回答 2

8

-sortedArrayUsingSelector:实际上是NSArray一种返回排序数组的方法(您会立即忽略它)。您的意思是使用-sortUsingSelector:,这是一种NSMutableArray重新排列现有数组本身的方法。

在 Cocoa 中很常见的是有一个方法用于返回一个对象的修改后的不可变版本,而另一种方法用于修改可变对象本身(例如-stringByAppendingString:和)。-appendString:

于 2013-08-22T11:07:52.480 回答
1

From NSArray Class Reference sortedArrayUsingSelector: 返回一个数组,该数组以升序列出接收数组的元素,由给定选择器指定的比较方法确定。

于 2013-08-22T11:09:23.313 回答