Я пытаюсь прочитать файл с помощью Objective C, используя следующий код:
NSFileManager *fileManager = [NSFileManager defaultManager];
NSString * myStr = @"/tmp/test.txt";
NSString * myStr4 = @"/tmp/HeaDumper";
if ([fileManager fileExistsAtPath:myStr4] == YES) {
NSLog(@"%@ exists",myStr4);
if ([fileManager isReadableFileAtPath:myStr4]) {
NSLog(@"%@ is Readable",myStr4);
} else {
NSLog(@"%@ not readable",myStr4);
}
if ( [fileManager isExecutableFileAtPath:myStr4]) {
NSLog(@"%@ is Executable",myStr4);
} else {
NSLog(@"%@ Not Executable",myStr4);
}
} else {
NSLog(@"%@ file not exist",myStr4);
}
if ([fileManager fileExistsAtPath:myStr] == YES) {
NSLog(@"%@ exists",myStr);
if ([fileManager isReadableFileAtPath:myStr]) {
NSLog(@"%@ is Readable",myStr);
} else {
NSLog(@"%@ not readable",myStr);
}
if ( [fileManager isExecutableFileAtPath:myStr]) {
NSLog(@"%@ is Executable",myStr);
} else {
NSLog(@"%@ Not Executable",myStr);
}
} else {
NSLog(@"%@ file not exist",myStr);
}
, и получаю следующий результат:
- 2020-05-29 15 : 05: 12.009759 + 0100 readfile2 [7923: 967693] / tmp / HeaDumper существует
- 2020-05-29 15: 05: 12.009855 + 0100 readfile2 [7923: 967693] / tmp / HeaDumper не читается
- 2020-05-29 15: 05: 12.009900 + 0100 readfile2 [7923: 967693] / tmp / HeaDumper Not Executable
- 2020-05-29 15: 05: 12.009939 + 0100 readfile2 [7923: 967693 ] /tmp/test.txt существует
- 2020-05-29 15: 05: 12.009986 + 0100 readfile2 [7923: 967693] /tmp/test.txt не читается
- 2020-05- 29 15: 05: 12.010022 + 0100 readfile2 [7923: 967693] /tmp/test.txt Неисполняемый
Однако:
- файлы существуют
- файлы были
chmod
выделены 777, чтобы избежать каких-либо проблем с правами доступа (что не имело места, но необходимо устранить все возможные сопутствующие причины). - Один из них - исполняемый файл, ( HeaDumper , хранится в
myStr4
) so sh может быть доступен при чтении и выполнении - ; другой ( test.txt , сохраненный в
myStr
) - текстовый файл и должен быть доступен как минимум при чтении.
Здесь проблема?