4

您好,我现在正在从 iOS 的文档目录中检索文件。

我还按 CreationDate 对文件进行了排序。

在我的文档目录中,它也有很多文件夹和文件。

因此,当我从文档目录中检索所有文件时,该文件夹名称也包括在内。

我只想检索(.txt)格式文件。

我怎样才能做到这一点?

4

2 回答 2

5

假设所有文件都有扩展名,您可以创建一个谓词并使用它来过滤数组。谓词的格式如下:

@"self ENDSWITH '.txt'"

根据您在下面的评论,您实际上拥有完整的文件NSURL,而不是字符串文件名。所以你应该使用谓词格式:

@"absoluteString ENDSWITH '.txt'"
于 2013-07-24T14:27:43.927 回答
2

这是@Wain's answer的补充,并假设您正在使用 webview 加载文本文件

  NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
  NSString *documentsDirectory = [paths objectAtIndex:0];
  NSArray *filePathsArray = [[NSFileManager defaultManager] subpathsOfDirectoryAtPath:documentsDirectory  error:nil];
  NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF EndsWith '.txt'"];
  filePathsArray =  [filePathsArray filteredArrayUsingPredicate:predicate];
  NSLog(@"files array %@", filePathsArray);
  NSString *localDocumentsDirectoryVideoFilePath = [documentsDirectory
                                                    stringByAppendingPathComponent:[filePathsArray objectAtIndex:0]];
  NSURL *fileUrl=[NSURL fileURLWithPath:
                   localDocumentsDirectoryVideoFilePath];
  [_webview loadRequest:[NSURLRequest requestWithURL:fileUrl]];

这里 _webview 是一个 IBOutlet。此外,它正在加载第一个文本文件。
我希望这有帮助。

于 2013-07-24T15:15:06.870 回答