poi 循环给不同的列加同样的样式,但是只有循环到的最后一列才生效?(java中用poi操纵excel 为什么循环集合添加到excel中总是只添加最后一条数据,
- java中用poi操纵excel 为什么循环集合添加到excel中总是只添加最后一条数据,
- Python for循环得到的数据写入到excel里只有最后一次循环的数据。怎么修改才会追加?
- poi操作excel 如何循环第一列(急,大家帮帮忙)
- 为什么数据多时,poi生成excel样式不生效
java中用poi操纵excel 为什么循环集合添加到excel中总是只添加最后一条数据,
你循环的代码有问题,把代码贴出来
---------------------------------------------------
public void createexl(String filepath){ //创建新文件
。。。。。。
。。。。。。。。
if(InFor!=null){
HSSFRow rows = null;
for(int xfinfor=0;xfinfor int rowNum = xfinfor / 3 + 2; int modNum = xfinfor % 3; if(modNum == 0){ rows = sheet.createRow(rowNum); } String cellvalue=InFor.get(xfinfor).toString(); System.out.println(cellvalue); // 在这里能把值全部打出来。 HSSFCell setcell=rows.createCell(modNum); setcell.setCellValue(cellvalue);//但是这里只添加最后一条? } } } 105行只写了最后一次循环的,要做个变量不断累加,最后把这个变量写到excel就好了, 试试 1.创建一个excel关联对象HSSFWorkbook: HSSFWorkbook book = new HSSFWorkbook(); 2.创建一个sheet: HSSFSheet st = book.createSheet("sheet1"); 3.创建第i行: HSSFRow row = st.createRow(i); 4.创建第i行的j列: HSSFCell cell = row.createCell(j); 5.设置cell属性 给单元格设置边框属性: + View Code? HSSFCellStyle style = book.createCellStyle(); // 左右上下边框样式 style.setBorderLeft(HSSFCellStyle.BORDER_THIN); style.setBorderRight(HSSFCellStyle.BORDER_THIN); style.setBorderTop(HSSFCellStyle.BORDER_THIN); style.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 左右上下边框颜色(深蓝色),只有设置了上下左右边框以后给边框设置颜色才会生效 style.setLeftBorderColor(HSSFColor.BLACK.index); style.setRightBorderColor(HSSFColor.BLACK.index); style.setTopBorderColor(HSSFColor.BLACK.index); style.setBottomBorderColor(HSSFColor.BLACK.index); 6.给单元格设置背景: style.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);// 设置了背景色才有效果 style.setFillForegroundColor(HSSFColor.GREY_25_PERCENT.index); 7.给单元格设置字体: // 单元格字体 HSSFFont font = book.createFont(); font.setFontName("宋体"); 9.设置字体以后,需要把字体加入到style中: style.setFont(font); 10.设置好单元格属性以后,需要这种属性的单元格就可以调用此style: cell.setCellStyle(style); 11.设置sheet表单的列宽: st.setColumnWidth(i, cellWidths.get(i).intValue() * 160); 12.列宽的设置方法在HSSFSheet中,方法参数:第一个参数表示第几列,从0开始数;第二个参数表示宽度为多少,大小由使用者调整。 合并单元格: st.addMergedRegion(new CellRangeAddress(0, 1, 0, keys.size() - 1)); 13.单元格合并方法也是在HSSFSheet中,方法参数:一个CellRangeAddress,该类构造函数的4个参数分别表示为:合并开始行,合并结束行,合并开始列,合并结束列。 这里写错了,应该是写row3.createCell(0).setCellStyle(cellStyle1)才对Python for循环得到的数据写入到excel里只有最后一次循环的数据。怎么修改才会追加?
poi操作excel 如何循环第一列(急,大家帮帮忙)
为什么数据多时,poi生成excel样式不生效