小虫今天 有遇到了恶心的问题。就是传说中的J2ee后台构造的对象,向前端导出Excel乱码的问题,哎 ,一言难尽。啥也不说了 直接上代码。。。
这是我后台的对象。。。。在Sping MVC框架下写的
@SuppressWarnings("unchecked")
@RequestMapping(value = "exportExcel")
public String exportExcel(Model model, HttpServletRequest request,HttpServletResponse response, HttpSession session) {
List<RowDataEntity> rowDataEntities = (List<RowDataEntity>) session.getAttribute(ROWDATALIST);
List<String> column = (List<String>) session.getAttribute(COLUMN);
model.addAttribute("column", column);
model.addAttribute("rowdata", rowDataEntities);
return "dtfb/chaxun/exportDataExcel";
}
可是到了前端输入Excel时候 有乱码 。你说搞笑不搞笑。。
后来经过多番尝试 终于解决了 乱码。。
前端的JSP页面 ,应该这么写
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
<%
response.setContentType("application/vnd.ms-excel;charset=UTF-8");
response.setHeader("Content-disposition", "attachment;filename=excel.xls");
%>
<html>
//这里就是多番尝试的结果。。。。
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
</head>
哎 细节打败爱情 一点没错 。。我还是小虫呀 。