NSFileManager获得文件列表

  • 在开发iPhone程序时,有时候要对文件进行一些操作。而获取某一个目录中的所有文件列表,是基本操作之一。通过下面这段代码,就可以获取一个目录内的文件及文件夹列表。
    NSFileManager *fileManager = [NSFileManager defaultManager];
  //在这里获取应用程序Documents文件夹里的文件及文件夹列表
          NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
          NSString *documentDir = [documentPaths objectAtIndex:0];
          NSError *error = nil;
          NSArray *fileList = [[NSArray alloc] init];
  //fileList便是包含有该文件夹下所有文件的文件名及文件夹名的数组
          fileList = [fileManager contentsOfDirectoryAtPath:documentDir error:&error];
  • 以下这段代码则可以列出给定一个文件夹里的所有子文件夹名
    NSMutableArray *dirArray = [[NSMutableArray alloc] init];
          BOOL isDir = NO;
  //在上面那段程序中获得的fileList中列出文件夹名
          for (NSString *file in fileList) {
                  NSString *path = [documentDir stringByAppendingPathComponent:file];
                  [fileManager fileExistsAtPath:path isDirectory:(&isDir)];
                  if (isDir) {
                          [dirArray addObject:file];
                  }
                  isDir = NO;
          }
          NSLog(@"Every Thing in the dir:%@",fileList);
          NSLog(@"All folders:%@",dirArray);
posted @ 2012-11-09 10:45  李伯波  阅读(204)  评论(0编辑  收藏  举报