如何在OS X中找到用户的'Documents'文件夹?

时间:2009-02-20 00:37:39

标签: java macos

我想在用户的'Documents'文件夹中创建一个目录,但到目前为止我还只知道如何获取用户的主目录:

javax.swing.JFileChooser fr = new javax.swing.JFileChooser();
javax.swing.filechooser.FileSystemView fw = fr.getFileSystemView();
this.userDirectory = fw.getDefaultDirectory();

在Windows中,上面的代码返回“我的文档”目录,这很棒,这就是新文档应该去的地方。在OS X上,它只返回主目录。

将“文档”添加到返回的路径会导致本地化问题。

我该怎么做?

3 个答案:

答案 0 :(得分:9)

您想使用Apple的eio.FileManager扩展程序:

    static public String documentsDirectory()
            throws java.io.FileNotFoundException {
        // From CarbonCore/Folders.h
        final String kDocumentsDirectory = "docs";
        return com.apple.eio.FileManager.findFolder(
            com.apple.eio.FileManager.kUserDomain,
            com.apple.eio.FileManager.OSTypeToInt(kDocumentsDirectory)
        );
    }

Documentation

答案 1 :(得分:8)

System.getProperty( “的user.home”)+文件分割符+ “文档”;

不要担心本地化,请看:

macb:Documents laullon$ pwd
/Users/laullon/Documents

我的OS X是西班牙语。

答案 2 :(得分:0)

在Mac上(据我所知最近的10.x版本),“我的文档”目录位于(从根目录):
/用户/<用户名> / Documents
因此,它位于用户主目录中的“Documents”子目录中。