Когда вы использовали
file.makeDirs();
Созданы все несуществующие каталоги, включая "NewFileToGenerate" +getName+headerDate+ ".xls"
. Да, файл, который вы хотите создать, создается как каталог.
И затем вы вызвали file.createNewFile (), который вернет false, поскольку существует каталог с тем же именем, что и файл.
Попытка использовать FileOutputStream с каталогом не будет работать, будет выдано исключение.
Следовательно, вы увидите это сообщение об ошибке:
D: / Новый файл / NewFileToGenerateUser26 / 2018 20: 00: 14.xls (является каталогом)
Возможное исправление:
Сначала создайте родительский каталог, а затем создайте файл, который вы хотели создать после того, как родительский каталог создан в другом операторе.
Такие как:
File file = new File("parent1/parent2");
file.mkDirs();
File desiredFile = new File("parent1/parent2/desiredfile.extensionhere");
desiredFile.createNewFile();