您的位置:首页 > 编程语言 > Java开发

java 导出excel,文件名称是乱码问题

2016-07-20 10:10 337 查看
        由于火狐和IE等浏览器的原因导致了导出时候的excel文件的名称为中文的时候是乱码,所以需要在后台代码里面对浏览器进行判断。

代码如下:

           // excel 文件的 MIME 类型

            response.setContentType("application/msexcel");

            //在导出前对名称根据浏览器做下处理

            String agent = request.getHeader("USER-AGENT").toLowerCase();

            response.setContentType("application/vnd.ms-excel");

            String fileName = "问卷调查";

            String codedFileName = java.net.URLEncoder.encode(fileName, "UTF-8");

            if (agent.contains("firefox")) {

                response.setCharacterEncoding("utf-8");

                response.setHeader("content-disposition", "attachment;filename=" + new String(fileName.getBytes(), "ISO8859-1") + ".xls");

            } else {

                response.setHeader("content-disposition", "attachment;filename=" + codedFileName + ".xls");

            }

            OutputStream out = response.getOutputStream();

            //导出操作

            ExportExcel.exportExcel("问卷调查",resultMap, out);

            out.flush();

            out.close();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息