使用NSArray显示文件夹中的.txt文件数

时间:2014-01-23 00:55:38

标签: cocoa nsarray nsfilemanager

我需要一些帮助来显示文件夹中的.txt文件数。

我可以在文件夹中查找.txt文件:

 NSURL *fileURL = [NSURL fileURLWithPath:filePath];

NSString *theFolder= [fileURL path];

NSError *error;

NSString *file;

NSEnumerator *files = [[[NSFileManager defaultManager]
                        contentsOfDirectoryAtPath:theFolder error:&error] objectEnumerator];
while(file = [files nextObject] ) {
    if( [[file pathExtension] isEqualToString:@"txt"] ) {

...我可以显示文件夹中的文件总数:

 NSArray *filelist= [[NSFileManager defaultManager]
                     contentsOfDirectoryAtPath:myString error:nil];

                    NSInteger count = [filelist count];
                    [totalFiles setIntegerValue:count];

我很难理解如何只显示给定文件夹中的.txt文件数。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

你可以这样做:

NSEnumerator *files = [[[NSFileManager defaultManager]
                        contentsOfDirectoryAtPath:theFolder error:&error] objectEnumerator];
NSMutableArray *arrayOfTxtFiles = [[NSMutableArray alloc] init];
while(file = [files nextObject] ) {
    if( [[file pathExtension] isEqualToString:@"txt"] ) {
         [arrayOfTxtFiles addObject: file];
    }
}

NSLog( @"count of .txt files is %d", [arrayOfTxtFiles count] );

arrayOfTxtFiles包含所有.txt文件名。

我的代码基于你的第一个代码片段,尽管可能有更优雅的方式来做你想做的事情。