设置单元格内数据自动换行需要两个条件:
一、单元格自动换行 CellStyle dataStyle = workbook.createCellStyle(); dataStyle.setWrapText(true); 二、需要换行的数据之间添加换行操作符"\r\n" 例如:"hello\r\nworld"想要单元格内容完全显示的话,需要设置EXCEL列为自动列宽workbook.getSheetAt(0).autoSizeColumn(0); 自动列宽时可能出现的问题:1、自动列宽时英文和数字正常,如果是中文会出现显示不全,部分被遮盖 如果想全部显示,则需要设置EXCEL为固定列宽 a.获取字节数cellLength=value.getBytes().length; 如果出现英文最后一个字符换行了,可以添加数值cellLength=value.getBytes().length+1; b.设置单元格宽度work.getWorkbook().getSheetAt(0).setColumnWidth(2, cellLength*256);
如果可选择为.xls或者.xlsx两种格式的话,输出到EXECL中时,两个版本的默认字体不同,会导致显示结果不一样,为了达到相同的显示效果,可以自动设置字体。
Font font = workbook.createFont(); font.setItalic(true); //font.setFontName("宋体");dataStyle.setFont(font);