通过此代码在磁盘上创建文件后:
Path resultPathParent = dtoToPath(dto).getParent();
try {
Files.createDirectories(resultPathParent);
Files.write(resultPath, bytes);
logger.info("Uploaded doc: {}", fileName);
return dto;
} catch (IOException e) {
throw new SddSystemException(e);
}
创建的文件在某些未定义的时间内不能删除,也不能通过Java手动删除。在手动删除的情况下,对话框窗口显示文本,例如“由于文件在Java(TM)Platform SE二进制文件中打开,因此无法完成操作”。
据我所知,Files.write()
确保在写完所有字节后关闭文件。
我需要有机会在创建后立即删除文件。