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

javaWeb纯文本导出csv文件,前面的0消失问题

2018-02-02 19:30 190 查看
先上导出代码

String header = "序号,工号,姓名,奖项,奖品名,签字\r\n";
String comma = ",";

@RequestMapping("/exportAllLuckyUser")
public void exportAllLuckyUser(HttpServletResponse response) throws IOException {
response.setHeader("Content-Disposition", "attachment; filename=LuckyUser.csv");

StringBuilder csv = new StringBuilder(header);
List<LuckyUser> list = luckyUserDao.find(Query.build());
int i = 1;
for (LuckyUser luckyUser : list) {
csv
.append(i++)
.append(comma)
.append("\t").append(luckyUser.getEmployeeNo())// 前面加\t,即tab符
.append(comma)
.append(luckyUser.getUsername())
.append(comma)
.append(luckyUser.getLevelName())
.append(comma)
.append(luckyUser.getPrizeName())
.append(comma)
.append(" ")
.append("\r\n");
}
OutputStreamWriter osw = new OutputStreamWriter(response.getOutputStream(), "GBK");
osw.write(csv.toString());
osw.flush();
}

如代码所示luckyUser.getEmployeeNo()这句返回员工号,员工号前面有数字0,如001234
在导出csv时,打开csv前面的0消失,变成1234.解决办法是在前面加上\t
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: