我正试图在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(“file.separator”)的常量)
我现在要将文档存储在用户文档文件夹中。但是我没有名为xdg_documents_dir的环境变量。我有一个“.config/user dirs.dirs”文件具有该xdg配置,还有一个“xdg user dir documents”文件直接返回该路径。
更糟糕的是,默认文档目录取决于用户的区域设置。
在Java应用程序上使用配置的文档目录的最佳方式是什么?

最佳答案

在gnome上有javagnome支持库,它正在进行本机调用以更好地与gnome集成。它可以通过调用Glib.getUserSpecialDir获取用户目录的路径。如果你打算在程序中使用更多的桌面集成功能,那么我自己还没有尝试过这个功能。

关于java - 在Java应用程序上使用XDG目录规范,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22250118/

10-10 21:48