2012-05-24 5 views
14

Starałem się stworzyć katalogNSFileManager tworzenia błąd katalog 518 NSFileWriteUnsupportedSchemeError

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]; 

mam następujący błąd

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} 

może url jest źle?

Odpowiedz

35

Zamiast

[NSURL URLWithString:BIDirectory] 

skorzystaj

[NSURL fileURLWithPath:BIDirectory] 

jego błędne użycie URLWithString: BIDirectory na lokalnych plikach

+1

Dobre połączenie! Spędziłem kilka minut i nie mogłem ustalić, o co chodzi. – Yariv

+0

Dziękuję, dziękuję, dziękuję. Spędziłem dzisiaj na tym kilka godzin, zanim znalazłem tę odpowiedź. Przekazywałem moje testy, ale nie na urządzeniu. –