在日常开发中,经常遇到读取Excel的情况。往往在处理Excel时,我们一般需要解析Excel内容的列名以及列名对应下面的内容,即列名为一个集合,列名对应的内容为key-value形式,key为列名,value为值。因此自定义一个ExcelUtil来方便处理Excel内容
代码:
引入POI依赖:
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.1.0</version>
</dependency>
public class ExcelUtil {
private static final Logger logger = LoggerFactory.getLogger(ExcelUtil.class);
/**
* 响应给httpResponse
* @param response
* @param fileName
* @param headList
* @param rows
*/
public static void write2Response(HttpServletResponse response, String fileName, List<String> headList, List<ArrayList<String>> rows) {
response.setHeader("Content-Disposition", "attachment;filename="+fileName+".xlsx");
response.setContentType("application/octet-stream;charset=UTF-8");
try (OutputStream outputStream = response.getOutputStream(); Workbook workbook = write(headList, rows);){
workbook.write(outputStream);
} catch (Exception e)