Java导出Excel文件,在Wps上可以打开但是Office上打不开的问题
1. 在做项目过程中,涉及到需要导出列表数据
1. 前端如果用 xlsx 格式接收表格,后台用 XSSFWorkbook workbook = new XSSFWorkbook(); 创建工作薄
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.addHeader("Content-Disposition", "attachment;filename=fileName" + ".xlsx");
2. 前端如果用用 xls 格式接收表格,后台用 HSSFWorkbook workbook = new HSSFWorkbook(); 创建工作薄
response.setContentType("application/vnd.ms-excel");
response.addHeader("Content-Disposition", "attachment;filename=fileName"+".xls");
2. 那么 xls 和 xlsx有什么区别
2.1文件核心结构不同
1. xls 核心结构是复合文档类型的
2. xlsx 的核心结构是 XML 类型的结构,并且基于XML进行压缩(占用空间更小),所以也可以看做zip文件,
将一个“.xlsx”文件的后缀改为ZIP后,用解压软件解压,可以看到里面有一个 xml文件和文件的主要内容。
2.2 版本不同
1. xls是excel2003及以前版本所生成的文件格式
2. xlsx是excel2007及以后版本所生成的文件格式(2007 是可以兼容2003的xls格式的)
2.3 最大行列得数量不同
1. xls最大只有65536行、256列
3. xlsx可以有1048576行、16384列