Если я создаю URL а-ля:
const UInt8 *pFilepath = (const UInt8 *)[[NSHomeDirectory() stringByAppendingString:@"/Documents/"] UTF8String];
CFURLRef ldestination = CFURLCreateFromFileSystemRepresentation (NULL, pFilepath, strlen((const char*)pFilepath), false);
, а затем войдите в систему, чтобы увидеть, что у меня есть а-ля:
NSLog(@"destination url:%@",(NSString*)ldestination);
завершающий слеш на "/ Documents /" удален. Не проблема, если это не важно. Но когда я делаю
dirPath = CFURLHasDirectoryPath(ldestination);
if (!dirPath) {
fprintf(stderr, "no dice");
return false;
}
ошибка выдается. Если вместо этого я передам NSString, которая включает в себя завершающий слеш, он не выдаст ошибку в CFURLHasDirectoryPath, но не передаст
writeStream = CFWriteStreamCreateWithFile(kCFAllocatorDefault, ldestination);
assert(writeStream != NULL);
А идея, что происходит? В идеале, я думаю, что если я смогу сохранить косую черту в CFURLRef, он пропустит ошибки, но я точно не знаю.
Есть мысли?
Спасибо.