我需要打开一个以用户库文件夹作为目标文件夹的 NSSavePanel。通常我会通过输入来做到这~/Library/
一点[NSSavePanel beginSheetForDirectory]
。
只要应用程序没有被沙盒化,它就可以正常工作。对于沙盒应用程序,这将导致NSSavePanel
尝试访问应用程序文档“框”内的文件夹。
我不能参考,/Users/username/Library/
因为我在运行时不认识用户username
。那么我如何链接到可可中的这条路径?
我需要打开一个以用户库文件夹作为目标文件夹的 NSSavePanel。通常我会通过输入来做到这~/Library/
一点[NSSavePanel beginSheetForDirectory]
。
只要应用程序没有被沙盒化,它就可以正常工作。对于沙盒应用程序,这将导致NSSavePanel
尝试访问应用程序文档“框”内的文件夹。
我不能参考,/Users/username/Library/
因为我在运行时不认识用户username
。那么我如何链接到可可中的这条路径?
我不确定沙盒如何适应这一点,但您可以使用以下命令找到用户的库目录:
NSArray* paths = NSSearchPathForDirectoriesInDomains( NSLibraryDirectory, NSUserDomainMask, YES );
不确定这是否适用于沙盒应用程序,但我现在就是这样做的。这将返回 /User/TheirUserName
-(NSString *)homeDirectory
{
return NSHomeDirectory();
}