我已經很熟悉創建文件並將它們放在「user.home」中。我在Mac上,所以不太瞭解PC的文件夾,但在我的庫中有應用程序支持。有沒有一種方法可以在PC的%appdata%中放置一個目錄?在應用程序支持或%appdata中創建目錄%
4
A
回答
4
Windows上的AppData文件夾是「{user.home} \ Local Settings \ ApplicationData」;
您可以使用此得到它:
String dataFolder = System.getProperty("user.home") + "\\Local Settings\\ApplicationData";
或通過這一點,但它僅適用於Windows,因爲環境變量「APPDATA」僅在Windows下可用。
String dataFolder = System.getenv("APPDATA");
富勒的更多信息,你可以檢查出來How to get local application data folder in Java?
+0
請注意,第一種方法是語言相關的,並受[此問題](http://stackoverflow.com/q/2134338/1804173)影響,所以第二種方法應該更加可靠。 – bluenote10 2015-06-07 11:57:53
0
這裏是我使用的代碼,你可以使用它,如果你想:
公共文件管理器(){
String FileFolder = System.getenv("APPDATA") + "\\" + "Launcher";
System.out.println("Searching for system");
String os = System.getProperty("os.name").toUpperCase();
if (os.contains("WIN")) {
FileFolder = System.getenv("APPDATA") + "\\" + "Launcher";
System.out.println("Found windows");
}
if (os.contains("MAC")) {
FileFolder = System.getProperty("user.home") + "/Library/Application " + "Support"
+ "Launcher";
System.out.println("Found mac");
}
if (os.contains("NUX")) {
FileFolder = System.getProperty("user.dir") + ".Launcher";
System.out.println("Found linux");
}
System.out.println("Searching for resource folder");
File directory = new File(FileFolder);
if (directory.exists()) {
System.out.println("Found folder");
}
if (directory.exists() == false) {
directory.mkdir();
System.out.println("Could not find folder so created it");
}
}
只有在Windows上測試過,有人可以在mac/L上測試它inux的?
相關問題
- 1. 如何在%appdata%中創建目錄%
- 2. C#在%AppData中創建目錄%DataData%
- 3. 寫入應用程序支持目錄
- 4. 嘗試在應用程序支持中創建目錄時拒絕權限
- 5. 在子目錄或URL重寫中創建ASP.Net應用程序?
- 6. 在java中查找OSX上的應用程序支持目錄
- 7. 在支持RTL的Android應用程序中創建LTR活動
- 8. 在「AppData \ Roaming」目錄中創建一個文件夾[Python]
- 9. 在應用程序通用數據目錄中創建一個目錄
- 10. 找不到應用程序支持目錄
- 11. iOS應用程序支持更新時覆蓋目錄文件?
- 12. 無法在Web應用程序目錄中創建文件
- 13. 在PhoneGap應用程序中創建目錄
- 14. create-app在當前目錄中創建應用程序
- 15. Django沒有在正確的目錄中創建應用程序
- 16. Innosetup在應用程序目錄中創建文件夾
- 17. 在目錄中創建應用程序快捷方式
- 18. 在Web應用程序目錄中創建嵌入式hsqldb
- 19. 在Android應用程序目錄中創建文件夾列表
- 20. 爲MVC應用程序和*支持應用程序構建URL
- 21. 在Mono應用程序中支持Applescripting
- 22. 在黑莓應用程序的創建目錄中拋出「FileIOException:不是目錄」
- 23. 如何在Android應用程序中支持gujrati字體支持
- 24. ForceDirectories無法創建MacOS的應用程序支持
- 25. 創建支持多個後端的Web應用程序
- 26. 如何創建支持dpi的wpf應用程序?
- 27. 創建支持多個API級別的Android應用程序
- 28. 創建應用程序,它支持多屏(2.2及以上)
- 29. 創建多屏幕支持應用程序android
- 30. 創建一個支持AJAX的數據驅動應用程序
什麼是PC?你想獲得MAC上的「應用程序支持」文件夾嗎?或者在Windows上獲得「ApplicationData」文件夾? – donnior 2012-01-09 01:39:49
他意味着Windows上的「Application Data」文件夾,默認爲當前用戶的'%APPDATA%'。但是,我從來沒有聽說過Windows術語中的「應用程序支持」。順便說一下,'%APPDATA%'需要管理員權限才能修改其內容。 'user.home'的等價Windows文件夾是'%USERPROFILE%'。要使用任何Windows環境變量,只需使用'System.getenv(string);'。例如:'System.getenv(「USERPROFILE」);''或'System.getProperty(「user.home」);' – 2012-01-09 01:45:59
爲什麼不簡單地使用(user.home的子目錄)作爲路徑?這應該適用於OS X,Windows **和** nix。 – 2012-01-09 02:22:06