将所有扩展名为文件目录的文件复制

时间:2011-05-04 11:51:44

标签: objective-c ipad nsdocumentdirectory

我在使用xcode将文件从在线位置复制到iPad的文档目录时遇到了一些麻烦。 我想下载的文件必须是扩展名为“xml”的文件。

现在我这样做:

NSData *onlineLink = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://localhost:8888/"]];
NSString *extension = @"xml";
NSFileManager *fileManager = [NSFileManager defaultManager];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];


NSArray *contents = [fileManager contentsOfDirectoryAtPath:onlineLink error:NULL];  
NSEnumerator *e = [contents objectEnumerator];
NSString *filename;
while ((filename = [e nextObject])) {

    if ([[filename pathExtension] isEqualToString:extension]) {
        [fileManager copyItemAtPath:[documentsDirectory stringByAppendingPathComponent:filename toPath:documentsDirectory error:NULL]];
    }
}

但是这不起作用,我收到此错误:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSConcreteData fileSystemRepresentation]: unrecognized selector sent to instance 0xb000800'

有人能给我一个提示,说明我收到错误的原因吗?

1 个答案:

答案 0 :(得分:2)

在该行:

NSArray *contents = [fileManager contentsOfDirectoryAtPath:onlineLink error:NULL];  

contentsOfDirectoryAtPath应该是一个NSString,你传递一个NSData对象