0

我需要将文档目录中的所有文本文件 (.txt) 复制到我的文件夹名称“Text”中。

我只能复制一个文件。

我想(*.txt)一键复制。

这里的代码是我的单个文件副本。

self.fileManager = [NSFileManager defaultManager];
NSError *error;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];

NSString *cutExtension = [tblGetNameToMove.textLabel.text stringByDeletingPathExtension];

NSString *txtPath = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.txt",cutExtension]];

NSString *fileName = [NSString stringWithFormat:@"%@/Text/%@.txt",documentsDirectory,cutExtension];

[self.fileManager copyItemAtPath:txtPath toPath:fileName error:&error];

我怎样才能做到这一点?

4

1 回答 1

0

获取文件夹中的所有内容

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];

NSArray *fileList = [[NSFileManager defaultManager] directoryContentsAtPath:documentsDirectory];

枚举文件列表并检查它是否包含 .txt

[fileList enumerateObjectsUsingBlock:^(NSString *string, NSUInteger index, BOOL *stop) {

  if ([string hasSuffix:@".txt"]) {
    [[NSFileManager defaultManager]copyItemAtPath:strdestination toPath:toPath error:&Error];
  }
}];

更新

根据 Martin R 的评论更新了我的答案

更新 2

正如 Hot Licks 所指出的,使用

if ([[string pathExtension] isEqualToString:@"txt"]) {

检查文件扩展名。

于 2013-08-15T11:16:42.313 回答