转载:https://blog.csdn.net/think_ycx/article/details/77875408
代码示例:
@RequestMapping(value = "getCsv",method = RequestMethod.GET)
@ResponseBody
public CommonResponse export(HttpServletResponse response){
try {
response.setContentType("application/msexcel;");
response.setHeader("Content-Disposition",
"attachment;filename=\"reward-detail.csv\";filename*=UTF-8''"
+ URLEncoder.encode("城市列表.csv", "UTF-8").replace("+", "%20")
);
ServletOutputStream outputStream = response.getOutputStream();
Writer writer = new OutputStreamWriter(outputStream, "gbk");
writer.write("城市,Id,日期");
writer.write("\r\n");
writer.write("上海,12345678901234,2018-04-04 12:23:00");
writer.write("\r\n");
writer.write("上海,12345678901234\t,2018-04-04 12:23:00");
writer.write("\r\n");
writer.write("上海,123456789012345,2018-04-04 12:23:00");
writer.write("\r\n");
writer.write("上海,123456789012345\t,2018-04-04 12:23:00");
writer.write("\r\n");
writer.write("上海,1234567890123456,2018-04-04 12:23:00");
writer.write("\r\n");
writer.write("上海,1234567890123456\t,2018-04-04 12:23:00");
writer.write("\r\n");
writer.write("上海,12345678901234567890,2018-04-04 12:23:00");
writer.write("\r\n");
writer.write("上海,12345678901234567890\t,2018-04-04 12:23:00\t");
writer.write("\r\n");
writer.flush();
writer.close();
return new CommonResponse(0,"SUCCESS");
} catch (IOException e) {
e.printStackTrace();
log.error("getZip exception:{}",e.getMessage());
return new CommonResponse(1,"FAIL");
}
}