Чтобы разрешить образы в отчете Jasper с помощью REPORT_FILE_RESOLVER, я создаю временный файл и копирую с ним из inputStream.Удаление файла работает только в первый раз
final File tempFile = File.createTempFile("aaa", ".tmp");
IOUtils.copy(resource.getInputStream(), new FileOutputStream(tempFile));
После доклада яшма экспортируется, я пытался удалить временный файл, как показано ниже:
final boolean deleteIfExists = Files.deleteIfExists(Paths.get(tempfile.getPath()));
// file.delete();
Но удаление файла является успешным только в первый раз, если я использую Files.deleteIfExists(Paths.get(tempfile.getPath()))
ли не успех для file.delete()
. Я реализую веб-приложение, и эта функция может быть вызвана так много раз .... Последнее время удаления, просто показывая файл используется другим процессом ...
Не знаю, почему ...
ли вы закрыть поток? –
@AlexK вы правы. Fogot закрыть fileOutputStream. Pls положил в качестве ответа. Спасибо вам. – swemon
Добро пожаловать :) –