Прежде всего извините меня за мой английский. Это мой первый вопрос. Я прочитал множество решений как для обычных, так и для необычных проблем в stackoverflow, и сообщество IMO stackoverflow является наиболее надежным в отрасли.iOS: «open: Permission denied»
В настоящее время я разрабатываю приложение iOS, и недавно я столкнулся с проблемой, и после некоторых исследований я не нашел решения. Когда я использую fopen
открыть существующий файл я получаю следующее сообщение об ошибке:
open: Permission denied
Ниже приведен код пропущен, который вызывает ошибку:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *cachePath = [paths objectAtIndex:0];
BOOL isDir = NO;
NSError *error;
if (! [[NSFileManager defaultManager] fileExistsAtPath:cachePath
isDirectory:&isDir] && isDir == NO) {
[[NSFileManager defaultManager] createDirectoryAtPath:cachePath
withIntermediateDirectories:NO
attributes:nil
error:&error];
}
NSString* filePath = [cachePath stringByAppendingPathComponent:
[NSString stringWithFormat:@"tmpmem%i.bin", count++]];
const char *cPath = [filePath cStringUsingEncoding:NSISOLatin1StringEncoding];
int file = open(cPath, O_RDWR | O_CREAT);
if (file == -1)
{
perror("open");
return NULL;
}
Я с нетерпением ждет вашей помощи. Заранее спасибо.
С уважением, Б. Димитров
его трудно узнать, не знаете, что такое буфер? все ваши пути должны относиться к [NSBundle mainBundle] –
Я обновил фрагмент кода. –
Я буду кланяться в этом месте, я не очень хорошо знаком с каталогами Cache. Возможно ли, что система взяла на себя ответственность за вещи, созданные здесь? Есть ли какая-то статья или КБ, которые заставят вас поверить, что это должно работать? –