Как получить File.getParent () для Файла, который был создан, установив просто имя файла в рабочем каталоге? - PullRequest
1 голос
/ 02 апреля 2019

Если я создал экземпляр файла с полным путем, например

    File file = null;
    try {
        file = new File(new URI("file:/C:/java2018/infa2019_2sm/test.txt"));
    } catch (URISyntaxException e) {
        e.printStackTrace();
    }

можно позвонить позже

   File directory = file.getParentFile(); 

и он будет назначен в каталог C: / java2018 / infa2019_2sm

Но если мы создадим файл с просто именем файла существующего файла в рабочем каталоге, как это

   File file=new File("test.txt");

каждый получатель файла работает, кроме getParentFile (), getParentFile () возвращает ноль.

Так каков законный способ получить гарантированный каталог объекта File с созданием его экземпляра с полным и коротким путями относительно рабочего каталога? Возможно ли это когда-либо с java.io или мне все равно нужно использовать java.nio?

Windows 10, если имеет значение, но, конечно, я бы хотел, чтобы она была кроссплатформенной.

1 Ответ

1 голос
/ 02 апреля 2019

С помощью ответа Тома рабочий путь выглядит как

   File directory=new File(new File(file.getAbsolutePath()).getParent());
...