Почему NSFileManager не может открыть файл? - PullRequest
2 голосов
/ 03 апреля 2012
NSFileManager* fileManager = [NSFileManager defaultManager];
NSURL* url = [[fileManager URLsForDirectory:NSCachesDirectory inDomains:NSUserDomainMask] lastObject];
NSLog(@"%@",url);
NSString* directory = [url absoluteString];
NSLog(@"%@",directory);
if (![fileManager fileExistsAtPath:directory]) NSLog(@"error!!!");

Вот журнал, сгенерированный приведенным выше кодом:

2012-04-03 15:45:02.298 TopPlaces[805:13303] file://localhost/Users/yzyoyosir/Library/Application%20Support/iPhone%20Simulator/5.0/Applications/2D6EC144-CF85-4994-8904-8FF5F8407FED/Library/Caches/
2012-04-03 15:45:02.300 TopPlaces[805:13303] file://localhost/Users/yzyoyosir/Library/Application%20Support/iPhone%20Simulator/5.0/Applications/2D6EC144-CF85-4994-8904-8FF5F8407FED/Library/Caches/
2012-04-03 15:45:02.301 TopPlaces[805:13303] error!!!

Почему я получил ошибку здесь.Я имею в виду, почему каталог не существует?

1 Ответ

5 голосов
/ 03 апреля 2012

fileExistsAtPath: нужен путь в качестве аргумента, но вы указываете URL как absoluteString.

Изменение

NSString* directory = [url absoluteString];

до

NSString* directory = [url path];
...