ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## SHHF的应用 > 逻辑 1. 设置表格列宽度 2. 设置样式(标题,表头,字段名,数据) 3. 生成行 4. 循环生成列 5. 设置改列的样式及填充数据 > 实现 ~~~ HSSFWorkbooke workbook = new HSSFWorkBooke(); //产生工作薄对象 ​ HSSFSheet sheet = workbook.createSheet(); //产生工作表对象(excel2003以下版本,一张表sheet容量大小为65536) ​ sheet.setColumnWidth(col,width); //设置表格列宽,col为列的下标(int类型),width为列的宽度(int类型,一个字符可以设为300左右) ​ //设置样式(部分举例,其它样式网上搜索) SHHFCellStyle cellStyle = workbook.createCellStyle(); cellStyle.setFillForegroundColor(IndexedColors.SKY_BLUE.getIndex()); //设置背景颜色(int) cellStyle.setBorderBottom(HSSFCellStyle.BORDER_MEDIUM); //设置下边框 ​ SHHFFont font = workbook.createFont(); //产生字体样式对象 font.setFontName("雅黑"); //设置字体 font.setFontHeightInPoints((short)12); //设置字体大小 cellStyle.setFont(font); //写入样式中 ​ //产生行及为每行生成列 SHHFRow row; //SHHF行对象 SHHFCell cell; //每一个单元格对象 ​ row.createRow(0); //产生第一行,0表示行的下标 row.setHeightInPoints(2 * sheet.defaultHeightInPoints); //设置行高,sheet.defaultHeightInPoints表示默认的行宽。 ​ cell.createCell(0); //产生该行的第一1列(即一个单元格),0表示下标 cell.setCellType(HSSFCell.CELL_TYPE_STRING); //设置写入内容为String类型 cell.setCellStyle(cellStyle); //写入样式 cell.setCellValue("hello"); //写入内容 ~~~ ~~~ /** * 合并单元格 * 标题,表头说明等需求 **/ ​ CellRangeAddress region = new CellRangeAddress(0,0,0,2); //合并第一行,第一列到第三列。前两个参数表示合并的开始行和结束行,后两个参数表示合并的开始列和结束列。 row.createRow(1);// ​ //建议在添加合并前先创键要合并的单元格,并设置样式,这样合并之后样式不丢失 sheet.addMergedRegion(region); //sheet添加合并 ​ cell.createCell(0); //产生该行的第一1列(即一个单元格),0表示下标 cell.setCellType(HSSFCell.CELL_TYPE_STRING); //设置写入内容为String类型 cell.setCellStyle(cellStyle); //写入样式 cell.setCellValue("hello"); //写入内容 ~~~