我正在嘗試遵循我的Java應用程序上的XDG目錄規範。我已經用它爲應用程序數據:在Java應用程序中使用XDG目錄規範
protected String getDefaultDataDir() {
String rootPath = System.getenv("XDG_DATA_HOME");
if(rootPath == null) {
rootPath = System.getProperty("user.home")+S+".local"+S+"share";
}
return rootPath+S+Pinocchio.PLATFORMNAME;
}
(S是包含System.getProperty(「文件分割符」)常數)
我現在想對用戶的文件存儲文檔夾。但是我沒有名爲XDG_DOCUMENTS_DIR的環境變量。我擁有具有該XDG配置的「.config/user-dirs.dirs」文件和直接返回該路徑的「xdg-user-dir DOCUMENTS」文件。
更糟糕的是,默認文檔目錄取決於用戶區域設置。
這是在java應用程序中使用配置的Documents目錄的最佳方式?
您提到「默認文檔目錄取決於用戶區域設置」。這個信息存儲在哪裏?即當前用戶的語言環境,也是每個語言環境的路徑等(我只是想明確地知道問題所在) – TheCodeArtist
恐怕您必須使用ProcessBuilder來運行xdg-user-dir或者自己解析'.config/user-dirs.dirs'。 –
@DenisTulskiy你說得對。我的第一反應是建議從代碼中運行'xdg-user-dir'。然而,我仍然想知道本地化,即**用戶區域設置**「商業」是否適合。因此,等待更多細節...... – TheCodeArtist