调用-createDirectoryAtURL:导致崩溃

时间:2011-11-25 10:28:07

标签: iphone objective-c ios ipad nsfilemanager

我现在真的很困惑。这是我的一段代码:

NSFileManager *manager = [NSFileManager defaultManager];

NSURL *backup = [self applicationDocumentsDirectory];
backup = [backup URLByAppendingPathComponent:@"Old_Data_File"];

[manager createDirectoryAtURL:backup withIntermediateDirectories:YES attributes:nil error:nil];

执行此代码时,它会在最后一行崩溃并显示消息

  

- [NSFileManager createDirectoryAtURL:withIntermediateDirectories:attributes:error:]:无法识别的选择器发送到实例0x5e59220

这怎么可能是一个无法识别的选择器?

修改

manager不是nil,打印backup到控制台会产生

  

{type = 15,string = file://localhost/Users/fabian/Library/Application%20Support/iPhone%20Simulator/4.3.2/Applications/D37C5B93-A778-4555-8953-814F823B1116/Documents/Old_Data_File, encoding = 134217984,base =(null)}

在路径存在Old_Data_File之前,最后一个组件应由文件管理器创建......

2 个答案:

答案 0 :(得分:4)

哦......你的目标是iOS 5.0及更新吗? iOS 4.3上不存在此API。

答案 1 :(得分:2)

你的意思是?

 (BOOL)createDirectoryAtPath:(NSString *)path withIntermediateDirectories:(BOOL)createIntermediates attributes:(NSDictionary *)attributes error:(NSError **)error

AtPath而不是AtURL?