NSFileManager创建目录错误518 NSFileWriteUnsupportedSchemeError

16

我试图创建一个目录

NSError*error=nil;

NSString* BIDirectory=[[NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,YES) objectAtIndex:0] stringByAppendingPathComponent:@"BI"];
BOOL isDir,flag=YES;
    //if the directory doesn't exist create it.
if(!([[NSFileManager defaultManager] fileExistsAtPath:BIDirectory isDirectory:&isDir]&& isDir))     
    flag=[[NSFileManager defaultManager] createDirectoryAtURL:[NSURL URLWithString:BIDirectory] withIntermediateDirectories:YES attributes:nil error:&error];

我收到了以下错误:

我遇到了以下错误

enter code hereError Domain=NSCocoaErrorDomain Code=518 "The operation couldn’t be completed. (Cocoa error 518.)" UserInfo=0x197190 {NSURL=/var/mobile/Applications/55793654-6CDB-4B07-8FBF-553DC37D583D/Library/Caches/BI}

也许URL有误?
1个回答

39

不是使用

    [NSURL URLWithString:BIDirectory]

请使用

    [NSURL fileURLWithPath:BIDirectory]

使用URLWithString:BIDirectory处理本地文件是错误的。


1
好的调用!花了几分钟也没弄清楚问题出在哪里。 - Yariv Nissim
谢谢,谢谢,谢谢。在找到这个答案之前,我今天花了很多时间。我的测试通过了,但是在设备上没有通过。 - Séraphin Hochart

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接