zhyiwww
用平实的笔,记录编程路上的点点滴滴………
posts - 536,comments - 394,trackbacks - 0
jsp或者sevlet中,如果response的contenttype是text/html,那么就直接通过浏览器就可以解析内容了。
如果是application/x-excel,那么浏览器就不能自己解析了,就需要通过excel程序来打开,或者另存为文件了。
问题是,如果你没有指定文件名的花,系统就会使用默认的文件名,并且没有后缀名。
所以,为了能让用户下载的时候能够自动的保存一个带有后缀的文件,那么就需要用setHeader来指定文件名了。

具体实现如下:
        response.setContentType("application/x-excel");
//        response.setContentType("application/vnd.ms-excel");
       
        OutputStream  out = response.getOutputStream();
       
        ExcelBussiness eb = new ExcelBussiness();
       
        try {
            response.setHeader("Content-Disposition", "attachment; filename="+"xxx.xls");

            eb.responseExcel(out);
        } catch (RowsExceededException e) {
            // export excel exception
            e.printStackTrace();
        } catch (WriteException e) {
            // export excel exceptin
        }

请参照粗体代码部分。




|----------------------------------------------------------------------------------------|
                           版权声明  版权所有 @zhyiwww
            引用请注明来源 http://www.blogjava.net/zhyiwww   
|----------------------------------------------------------------------------------------|
posted on 2010-02-08 10:37 zhyiwww 阅读(7231) 评论(0)  编辑  收藏 所属分类: j2ee

只有注册用户登录后才能发表评论。


网站导航: