我想在创建pdf文件后刷新FileInputStream实例。
我正在使用动态报告将报告导出为pdf
我不会发布整个代码。只有重要部分
JasperReportBuilder report = DynamicReports.report();//a new report
File path= new File("/home/kunal/Medicam reports/Sale Report");
String pdfreport = String.valueOf(dateformat.format(date));
if(!path.exists())
{
path.mkdirs();
report.toPdf(new FileOutputStream(path+"/"+pdfreport+".pdf"));
}
else
{
report.toPdf(new FileOutputStream(path+"/"+pdfreport+".pdf"));
}
File generatedfile = new File("/home/kunal/Medicam reports/Sale Report/"+pdfreport+".pdf");
if(generatedfile.exists())
{
if(Desktop.isDesktopSupported())
{
Desktop.getDesktop().open(generatedfile);
}
else
{
System.out.println("Not Supported by your desktop");
}
}
else
{
System.out.println("File does not Exists");
}
每当我运行上面的代码时,else部分将被执行为"File does not exists"
生成文件但是当我尝试读取新生成的文件时generatedfile.exists()
条件失败
答案 0 :(得分:0)
使用report.show()方法,它会在编译成功后立即打开pdf。