【发布时间】:2019-05-21 21:08:12
【问题描述】:
我正在使用 apache-poi 创建一个 .xlsx 模板,用户必须插入一个固定长度的 id。
我已经尝试过 setDataFormat(workbook.createDataFormat().getFormat("@")) 技巧,但是当单元格被编辑时,它似乎忘记了这一点,并且前导零消失了。
//this is the code snippet i found here on stackoverflow and tried out
DataFormat fmt = workbook.createDataFormat();
CellStyle textStyle = workbook.createCellStyle();
textStyle.setDataFormat(fmt.getFormat("@"));
worksheet.setDefaultColumnStyle(0, textStyle);
找到一个真正的解决方案会很棒,因为添加前导零以获得预期长度可能会导致错误。例如:用户的意思是 0000111 但忘记了 1 ,新的 id 将是 0000011 不幸的是 id 不是连续的。
感谢您的时间,并原谅我的英语不好XD
【问题讨论】:
标签: java apache-poi dataformat leading-zero