Создание каталога в поддержке приложений или% appdata% - PullRequest
5 голосов
/ 09 января 2012

Я уже знаком с созданием файлов и размещением их в "user.home".Я на Mac, так что не знаю много о папке на ПК, но в моей библиотеке есть поддержка приложений.Есть ли способ разместить каталог там, а также в% appdata% ПК?

Ответы [ 2 ]

4 голосов
/ 09 января 2012

Папка AppData в Windows: "{user.home} \ Local Settings \ ApplicationData";

Вы можете получить это, используя:

    String dataFolder = System.getProperty("user.home") + "\\Local Settings\\ApplicationData";

или этим, но это работает только в Windows, потому что переменная env 'APPDATA' доступна только в Windows.

    String dataFolder = System.getenv("APPDATA");  

Более подробную информацию вы можете проверить Как получить локальную папку данных приложения в Java?

2 голосов
/ 17 марта 2016

Вот код, который я использую, вы можете использовать его, если хотите:

public FileManager () {

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 / Linux?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...