Зачем использовать FileUtils.forceMkdir? - PullRequest
0 голосов
/ 18 октября 2019

Какая польза FileUtils.forceMkdir от Apache commons-io вместо File.mkdirs, встроенного в JRE?

Документы для forceMkdir:

Делаеткаталог, включая любые необходимые, но несуществующие родительские каталоги. Если файл с указанным именем уже существует, но не является каталогом, генерируется исключение IOException. Если каталог не может быть создан (или еще не существует), то генерируется исключение IOException.

В то время как документы на mkdirs равны

Создает каталог с именемэто абстрактный путь, включая любые необходимые, но несуществующие родительские каталоги. Обратите внимание, что если эта операция завершится неудачно, возможно, ей удалось создать некоторые из необходимых родительских каталогов.

Единственное различие в типе создаваемого исключения?

1 Ответ

1 голос
/ 18 октября 2019

Похоже, что основное отличие состоит в том, что реализация из Apache commons "громче": она выдаст исключение, если каталог для создания уже существует, но на самом деле это файл. Похоже, идея заключалась в том, чтобы обернуть реализацию JRE, которая возвращает false вместо исключения в случае неудачного создания каталога.

...