2
A
回答
12
文件系统中的目录名称始终为英文。这些目录可以附加本地化名称以显示给用户,但这些名称不是用来访问目录的名称。从Internationalization Programming Topics:
您需要了解应用程序中的本地化路径名并适当地显示它们。本地化路径名仅用于显示目的,在访问文件系统时不应使用本地路径名。在处理代码中的文件和目录时,应该继续使用实际的路径名,包括何时需要写入缓存或用户首选项。唯一一次应该使用本地化路径名称的时候,是想通过应用程序的用户界面向用户显示该路径。
这就是说,你得到编程方式使用NSSearchPathForDirectoriesInDomains
路径:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSApplicationDirectory, NSLocalDomainMask, YES);
// Returns an NSArray containing the string "/Applications"
您还可以使用-[NSFileManager URLsForDirectory:inDomains:]
:如果您需要本地化的名称显示给用户
NSArray *urls = [[NSFileManager defaultManager] URLsForDirectory:NSApplicationDirectory inDomains:NSLocalDomainMask];
// Returns an NSArray containing the NSURL "file://localhost/Applications"
3
[[[NSFileManager defaultManager] URLsForDirectory: NSApplicationDirectory inDomains:NSLocalDomainMask] lastObject];
我认为应该工作(reference)。如果您使用的是旧版本的OS X,并且URLsForDirectory不受支持,则可以使用NSSearchPathForDirectoriesInDomains()
。
1
为了得到一个文件夹的适合呈现给用户,使用本地化名称(或局部名的应用程序):
NSString *localizedName = [[NSFileManager defaultManager] displayNameAtPath:path];
对于应用程序文件夹,您可以使用:
NSString *localizedApplicationDirectoryName = [[NSFileManager defaultManager] displayNameAtPath:NSSearchPathForDirectoriesInDomains(NSApplicationDirectory, NSLocalDomainMask, YES).lastObject];
相关问题
- 1. 如何以编程方式获取应用程序的名称?
- 2. 以编程方式获取接口的驱动程序名称
- 3. 如何以编程方式获取应用组名称?
- 4. 编程确定活动应用程序的文件夹(OSX)
- 5. 以编程方式读取iOS应用程序.crash文件?
- 6. 指定Eclipse RCP应用程序的OSX应用程序文件的名称
- 7. 从软件包名称中获取应用程序名称
- 8. Erlang:以编程方式获取应用程序版本
- 9. 如何以编程方式获取当前位于android的最近堆栈中的应用程序的名称?
- 10. 以编程方式共享文件夹
- 11. 获取应用程序的名称
- 12. 以编程方式获取域名GAE应用程序托管在?
- 13. 使用C++应用程序获取文件的名称
- 14. 如何以编程方式获取文档库中子文件夹的GUID
- 15. 在Android中以编程方式更改应用程序名称和图标?
- 16. 如何以编程方式获取.app文件名?
- 17. 如何以编程方式获取Gradle模块名称
- 18. 以编程方式获取友好端口名称
- 19. AngularJS:以编程方式获取注入实体名称
- 20. 以编程方式获取绑定名称
- 21. 如何以编程方式获取会话cookie名称?
- 22. 从进程名称获取应用程序名称
- 23. 如何从进程名称获取应用程序名称?
- 24. MacOSX - 与应用程序相关联的文件扩展名 - 以编程方式
- 25. 如何以编程方式获取OSX上'映射文件'的大小?
- 26. 以编程方式从C#应用程序安装Apk文件
- 27. 选择应用程序以编程方式打开文件
- 28. iOS从应用程序名称获取应用程序图标
- 29. 如何以编程方式获取特定网站IIS6的应用程序池名称? C#
- 30. 以编程方式更改Excel文件的工作表名称
第一个例子不适用于ARC,你确定返回类型吗? – MatterGoal 2012-08-03 17:55:28
检查[documentation](https://developer.apple.com/library/mac/documentation/cocoa/reference/foundation/miscellaneous/foundation_functions/Reference/reference.html#//apple_ref/doc/uid/20000055-SW5 )。如果出现错误,请编辑您的问题并粘贴您的代码和错误。 – 2012-08-03 17:56:58
我发现错误抱歉。 “路径”不是“路径” 'NSSearchPathForDirectoriesInDomains' – MatterGoal 2012-08-03 17:58:26