В Java, каково расположение по умолчанию для вновь создаваемых файлов? - PullRequest
20 голосов
/ 01 марта 2011

В Java, каково расположение по умолчанию для вновь создаваемых файлов?

Ответы [ 2 ]

30 голосов
/ 01 марта 2011

Если текущий каталог приложения. Например, если вы создаете файл с помощью

new FileOutputStream("myfile")

затем он создается в «текущем» каталоге, который можно получить, вызвав

System.getProperty("user.dir");

Однако, если вы измените текущий каталог, вызвав собственные методы (очень маловероятно!), Свойство не будет обновлено. Его можно рассматривать как начальный текущий каталог приложения.

Если вы запустите приложение Java в пакетном файле и дважды щелкните ссылку на него, текущим каталогом будет каталог, в котором находится пакетный файл, но это можно изменить в ссылке.

Если вы запускаете приложение Java из командной строки, вы уже знаете каталог, в котором находитесь.

Если вы запускаете приложение Java из IDE, текущим каталогом обычно является корень проекта, но это обычно можно настроить в конфигурации запуска.

ОБНОВЛЕНИЕ 2017-08:

Вы также всегда можете найти текущее правильное местоположение с помощью new File(".").getAbsolutePath().

1 голос
/ 20 августа 2016

Надеемся, что вы используете eclipse или net bean ide. Недавно созданные файлы будут сохранены в рабочей области проекта в зависимости от того, как вы создали файл.Например, вы можете создать файл: 1) с помощью createfilename 2) с помощью файла FileOutputStream, FileWriter, PrintWriter и т. Д.

...