JasperReport jasperReport = (JasperReport) JRLoader.loadObjectFromFile("report1.jasper");JasperPrint jasperprint2 = JasperFillManager.fillReport(jasperReport, new HashMap(), new JRBeanCollectionDataSource(DailySalesDataSource.getBeanCollection()));JRViewer jr = new JRViewer(jasperprint2);JFrame jf = new JFrame();jf.setSize(500, 500);jf.add(jr);jf.setVisible(true);这样,会弹出一个窗口,点窗口上面的保存按钮时,只能保存.jrprint这个文件,请问如何激活所有保存文件类型?
1 回答

慕哥6287543
TA贡献1831条经验 获得超10个赞
private void toPdfbytes(HttpServletResponse response,byte[] bb,String filename) throws SystemException { response.reset(); response.setContentType("APPLICATION/OCTET-STREAM"); response.setHeader("Content-Disposition","attachment; filename=\"" + filename + "\""); response.setContentLength(bb.length); try { ServletOutputStream ouputStream = response.getOutputStream(); ouputStream.write(bb, 0, bb.length); ouputStream.flush(); ouputStream.close(); } catch (IOException e) { e.printStackTrace(); throw new SystemException(e.getMessage()); } }
response.setContentType这段,对应不同的类型!
或者你直接使用:
//导出为Html
//JasperExportManager.exportReportToHtmlFile(jasperPrint, "c:/area.html");
//导出为pdf
//OutputStream output = new FileOutputStream(new File("c:/catalog.pdf")); //JasperExportManager.exportReportToPdfStream(jasperPrint,output);
添加回答
举报
0/150
提交
取消