使用C函数rename()重命名文件

时间:2014-03-20 18:38:26

标签: c macos rename

我正在使用Mac。我需要重命名/ Library / Application Support / AppName / filename.aiff

中的文件

这是系统库而不是/ User / username / Library ...

我正在使用rename(old name, new name)功能。如果我将文件放在/ Library / Application Support / AppName目录中,但是如果我放置文件(例如,它),则此功能不起作用(即使它不会返回错误) /User/username/Documents/filename.aiff。

我不知道问题所在。任何帮助,将不胜感激。谢谢!

2 个答案:

答案 0 :(得分:0)

如果重命名在其他路径中正常工作,则表示问题应与permission访问文件或使用path searched for file相关。

答案 1 :(得分:0)

您不拥有要将文件移动到的目录:

  • /Users/Username/... 用户拥有的目录,因此您可以在那里操作文件。

  • /Library 不是用户拥有的目录。

为了操作非用户拥有目录中的文件,您需要提升权限。您应该使用 /Library,而不是使用~/Library ,这是用户拥有的目录。 ~/Library/Users/Username/Library的简写名称。