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. 如何以編程方式獲取APK的應用程序名稱(未安裝)
- 5. 如何以編程方式獲取應用組名稱?
- 6. Android:以編程方式獲取可繪製的名稱 - 名稱
- 7. 編程確定活動應用程序的文件夾(OSX)
- 8. 以編程方式讀取iOS應用程序.crash文件?
- 9. 以編程方式在文件中獲取應用程序sqlite數據庫
- 10. 以編程方式讀取logcat以獲得應用程序
- 11. 以編程方式獲取文件夾共享點的子項
- 12. 獲取應用程序的文件夾
- 13. 以編程方式獲取給定進程名稱和ppid
- 14. 如何以編程方式獲取log4net日誌文件的名稱模式?
- 15. 以編程方式獲取演示應用程序的UDID?
- 16. 如何以編程方式獲取應用程序的版本
- 17. 指定Eclipse RCP應用程序的OSX應用程序文件的名稱
- 18. PyQt:獲取文件名稱的文件放在應用程序
- 19. 以編程方式從相機文件夾獲取圖像
- 20. 從軟件包名稱中獲取應用程序名稱
- 21. Erlang:以編程方式獲取應用程序版本
- 22. 如何在iPhone應用程序的應用程序文件夾中以編程方式存儲圖像?
- 23. 如何以編程方式獲取當前位於android的最近堆棧中的應用程序的名稱?
- 24. 獲取SASApp服務器的名稱(以編程方式)
- 25. 以編程方式共享文件夾
- 26. 獲取應用程序的名稱
- 27. 以編程方式獲取域名GAE應用程序託管在?
- 28. 如何在android中以編程方式獲取當前選定的應用程序包名稱?
- 29. 使用C++應用程序獲取文件的名稱
- 30. 在Android中以編程方式更改應用程序名稱和圖標?
第一個例子不適用於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