Chr*_*her 9 excel xls xlsx apache-poi
我需要使用Java库Apache POI生成一个.xls(Excel)文件,用于电子表格.
该文件将包含A列中的电话号码列表,格式为"0221 ...."或"+49221 ..." - 因此Excel默认将它们解释为数字单元格.这很糟糕,因为前导0或+将被修剪.
为了解决这个问题,我可以使用cell.setCellType(Cell.CELL_TYPE_STRING),它工作正常,但仅适用于我为此设置的特定单元格.
如何将此设置应用于整个列(即使对于所有剩余的单元格,用户还将输入其他电话号码)?
在Excel中,这是可能的:选择整个列,然后应用单元格类型(设置可以保存/加载文件.)
但我找不到正确的POI方法.
sheet.setDefaultCellType(int colNum).但我找不到这样的东西(可能我只是盲目?库中有很多类似的方法 用于应用"对齐中心"等文本样式.)jah*_*roy 20
这是一些受弗拉德回答启发的示例代码:
DataFormat fmt = workbook.createDataFormat();
CellStyle textStyle = workbook.createCellStyle();
textStyle.setDataFormat(fmt.getFormat("@"));
worksheet.setDefaultColumnStyle(0, textStyle);
Run Code Online (Sandbox Code Playgroud)
上面的代码将第一列工作表的默认样式设置为TEXT.
弗拉德,弗拉德!