Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

NSFileManager - Create a readonly file

I have a file which I created using NSFileManager but could not find a way to make it readonly. I have searched all over the internet and in Apple's NSFileManager Class Reference but could not find anything. Here is the code of where the file was created.

if ([fm createFileAtPath:fileName contents:inputData attributes:nil] == NO) {
     NSLog(@"Error!");
     return 1;
}
like image 488
Maanit Avatar asked May 02 '26 14:05

Maanit


2 Answers

Use setAttributes: of [NSFileManager defaultManager] to remove the files read bit. This posts explains it.

Following sets permissions to -rwxrwxrwx (0777). Replace 0777 with the permissions you desire.

NSDictionary *attributes;
[attributes setValue:[NSNumber numberWithShort:0777] forKey:NSFilePosixPermissions];
[[NSFileManager defaultManager] setAttributes:attributes ofItemAtPath:@"/path/to/file"]
like image 179
Pétur Ingi Egilsson Avatar answered May 04 '26 09:05

Pétur Ingi Egilsson


Use :

[attributes setValue:[NSNumber numberWithShort:0777] forKey:NSFilePosixPermissions];

[filemanager setAttributes:atributes ofItemAtPath:yourPath error:nil];
like image 34
itsji10dra Avatar answered May 04 '26 11:05

itsji10dra