JAVA使用POI导出设置列格式为文本格式


前言

提示:JAVA使用POI进行导出时,将列格式设置成文本形式。


一、为什么要设置成文本形式

例如我们导出的时候,某列的数据格式是数字类型,在JAVA代码中我们是以String字符串类型的格式进行导出的,但是在excel中却被认为数字太大,自动用了科学计数法来转换。

导出时没设置文本格式的情况下:

在这里插入图片描述

在鼠标点击列后,会自动将格式转换成下方或其他形式,导致我们的数据出现差异,不是我们想要的数据:

在这里插入图片描述

二、设置文本格式

1、第一种方式

这个方法就是EXCEL默认的格式,写不写都一样(最终测试不生效)

Cell cell = row.getCell(0);
cell.setCellType(Cell.CELL_TYPE_STRING);

2、第二种方式

//设置文本格式
Cell cell = row.getCell(0);
CellStyle cellStyle = workbook.createCellStyle();
XSSFDataFormat format = workbook.createDataFormat();
cellStyle.setDataFormat(format.getFormat("@"));
cell.setCellStyle(cellStyle);

通过这种方式进行设置,导出的数据就是以纯文本形式展现。

在这里插入图片描述

总结

本人在做项目时遇到这个问题,在百度查询了相关文章后做此笔记。

猜你喜欢

转载自blog.csdn.net/SmallCat0912/article/details/125390397