有没有办法以编程方式修改Mac OSX中的文件权限(读/写)?

时间:2012-11-05 12:56:45

标签: objective-c macos file-permissions

  

可能重复:
  Setting file permissions in Objective-C

我想根据某种情况对文件应用读/写权限。

有没有办法在Mac OSX中以编程方式修改文件许可(读/写)?

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

这是我每次使用的片段:

NSMutableDictionary *dict = [[NSMutableDictionary alloc] init]; 

int r = 04; // read
int w = 02; // write
int x = 01; // execute

int owner = (r | w | x) * (8 * 8);
int group = (r | w)         * (8);
int other = (x);

int permissions = owner + group + other;

[dict setObject:[NSNumber numberWithInt:permissions] forKey:NSFilePosixPermissions]; 

NSError *error = nil;
[[NSFileManager defaultManager] setAttributes:dict ofItemAtPath:[file path] error:&error];

这使得文件对所有者进行读/写/执行,对组进行读/写,对其他进行可执行。

只需调整您的权限设置......