poi版本4.1.2
 生成excel后,单元格输入数字,过长的话变成这样
 
 解决:生成的时候设置单元格格式为文本格式
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileOutputStream;
import java.io.IOException;
public class ExcelWriter {
    public static void main(String[] args) {
        try (Workbook workbook = new XSSFWorkbook()) {
            Sheet sheet = workbook.createSheet("Sheet1");
            // 设置单元格样式为文本格式
            CellStyle textStyle = workbook.createCellStyle();
            DataFormat format = workbook.createDataFormat();
            textStyle.setDataFormat(format.getFormat("@"));
            int columnIndex = 0; // 要设置样式的列索引,例如第一列
            for (int i = 0; i < 10; i++) { // 假设有10行数据
                Row row = sheet.createRow(i);
                Cell cell = row.createCell(columnIndex);
                cell.setCellStyle(textStyle);
            }
            // 保存Excel文件
            try (FileOutputStream fileOut = new FileOutputStream("output.xlsx")) {
                workbook.write(fileOut);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
 
设置了10行的格式,11行没设置
 



















