坑爹的文件名问题

两盒软妹~` 提交于 2020-04-06 17:43:37

由于以前导出文件名都是一个数字串,一直没有在意这个名称的问题.才有现在的懵逼

修改前: 

/**
 * 设置导出头部信息(xls格式)
 * 
 * @param response
 * @param fileName
 */
public static void setResponseForXls(HttpServletResponse response, String fileName) throws UnsupportedEncodingException {
   response.setCharacterEncoding("utf-8");
   response.setContentType("multipart/form-data");
   response.setHeader("Content-Disposition", "attachment;fileName=" + fileName + ".xls");
}

修改后: 


public static void setResponseForXls(HttpServletResponse response, String fileName) throws UnsupportedEncodingException {
   response.setCharacterEncoding("utf-8");
   response.setContentType("multipart/form-data");
   response.setHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode(fileName , "UTF-8") + ".xls");
}

天真的以为有了response.setCharacterEncoding("utf-8");就OK了, 还得加个 URLEncoder.encode(fileName , "UTF-8");

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!