我正在开发一个可在Mac OS X上运行的Cocoa Objective-C应用程序。我需要获取当前用户主目录的完整路径:
/Users/MyUser/
在Objective-C / Cocoa中是否有标准函数可以做到这一点?
答案 0 :(得分:40)
NSHomeDirectory
:“返回当前用户主目录的路径。”
示例:
NSLog(@"Current user’s home directory is %@", NSHomeDirectory());
答案 1 :(得分:3)
从macOS 10.12开始,您还可以使用FileManager.default.homeDirectoryForCurrentUser
,请参阅documentation。
答案 2 :(得分:2)
您可以使用 FileManager.default.homeDirectoryForCurrentUser -> URL
或 NSHomeDirectory() -> String
- 它们都返回相同的内容,只是类型不同。
但是有一个重要的警告:
<块引用>在 macOS 中,它是应用程序的沙箱目录或当前用户的主目录(如果应用程序不在沙箱中)。
如果您正在构建要在 App Store 中分发的应用程序,您将不得不处理这样一个事实,即这些函数返回沙盒主目录,而不是用户认为的目录 ~
.