您的位置:首页 > 其它

将报表不在本地生成文件,直接输出到浏览器或者另存为的方法

2009-03-23 06:46 330 查看
一些人问到,生成报表时,不希望先生成本地文件再下载或者打开,希望直接将Excel等直接下载。

我这里提供一个简单的思路。



public void export(String content, HttpServletResponse response) throws IOException,
      RowsExceededException, WriteException {
    response.setContentType("application/ms-excel");
    String sheetName = "J***A世纪网的Excel报表例子.xls";
    sheetName = sheetName.replaceAll(":", "").replaceAll("[)]", "").replaceAll("[(]", "");
    // 这里解释一下
    // attachment; 这个代表要下载的,如果去掉就编程直接打开了
    // filename是文件名,另存为或者下载时,为默认的文件名
    response.addHeader("Content-Disposition", "attachment; filename="
        + new String(sheetName.getBytes("GBK"), "ISO-8859-1") + ".xls");
    OutputStream os = response.getOutputStream();
    WritableWorkbook wwb = Workbook.createWorkbook(os);
    // 这里是你的生成内容的代码。    
    wwb.write();
    wwb.close();
  }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐