出口到Excel,但内容在springmvc乱码?

我试图导出到Excel文件(.xls)在springmvc环境和springmvc版本是4.3.2.RELEASE,但是excel文件的内容是不正确的 在这里输入图像说明 我的代码如下:

public class ViewExcel extends AbstractXlsView { @Override protected void buildExcelDocument(Map<String, Object> model, Workbook workbook, HttpServletRequest request, HttpServletResponse response) throws Exception { List<BandedWordDo> bandedWordDos = (List<BandedWordDo>) model.get("list"); //创build工作薄 Sheet sheet = workbook.createSheet("bannded word"); CellStyle style = workbook.createCellStyle(); style.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 创build一个居中格式 for (int i = 0; i < bandedWordDos.size(); i++) { Row row = sheet.createRow(i); // 第四步,创build单元格,并设置值 String word = bandedWordDos.get(i).getWord(); row.createCell(0).setCellValue(word); } //设置头信息 String agent = request.getHeader("USER-AGENT").toLowerCase(); response.setContentType("application/vnd.ms-excel;charset=UTF-8"); final String fileName = "bandedWord"; 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(), Charset.forName("UTF-8")) + ".xls"); } else { response.setHeader("content-disposition", "attachment;filename=" + codedFileName + ".xls"); } 

}

 @RequestMapping(value = "/word/export", method = RequestMethod.GET) @ResponseBody public ModelAndView exportBanded(ModelMap modelMap) throws IOException { List<BandedWordDo> bandedWordDos = bandedService.getBandedWordList(Constants.NORMAL); modelMap.put("list", bandedWordDos); return new ModelAndView(new ViewExcel(), modelMap); 

}