Создание новых каталогов - PullRequest
0 голосов
/ 25 января 2012

Я застрял с тем фактом, что папка не создана.

private static File createNewTempDir() {
File baseDir = new File(System.getProperty("java.io.tmpdir"));
String baseNamePrefix = System.currentTimeMillis() + "_" + Math.random() + "-";
LOG.info(System.getProperty("java.io.tmpdir"));
File tempDir = new File(baseDir, baseNamePrefix + "0");
LOG.info(tempDir.getAbsolutePath());

tempDir.mkdirs();

if (tempDir.exists()) {
  LOG.info("I would be happy!");
}
else {
  LOG.info("No folder there");
}
return tempDir;
}

Что-то не так с этим?Я могу получить ЖУРНАЛ, что там нет папок ...

1 Ответ

2 голосов
/ 25 января 2012

Ваш код в порядке, но ваше условие неверно:

if (tempDir.exists()) {
  LOG.info("I would be happy!");
}
else {
  LOG.info("No folder there");
}

Папка действительно создана, вы можете проверить это, получив путь и открыв ее в Проводнике.

РЕДАКТИРОВАТЬ : Это работает по крайней мере на Windows.Я немного почистил:

   public static void main() {
        File baseDir = new File(System.getProperty("java.io.tmpdir"));
        File tempDir = new File(baseDir, "test0");
        System.err.println(tempDir.getAbsolutePath());

        tempDir.mkdir();

        System.err.println("is it a dir? " + tempDir.isDirectory());
        System.err.println("does it exist? " + tempDir.exists());
    }

Вывод:

C: \ Users \ marsch1 \ AppData \ Local \ Temp \ test0 это каталог?правда ли это существует?правда

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