使用java将数据导出为ex​​cel – 没有创build行

我需要帮助将数据导出到Excel文件。

第12行的单元格工作正常,但rowItems的单元格根本不显示任何内容。

代码应该从数据库中导出项目及其属性的列表。

Row row12 = sheet.createRow(11); Cell c12[] = new Cell[maxCols]; for(int i = 0; i <c12.length; i++){ c12[i] = row12.createCell(i); c12[i].setCellStyle(tableHeader2Bottom); } c12[0].setCellValue("1"); c12[1].setCellValue("2"); c12[2].setCellValue("3"); c12[3].setCellValue(""); c12[4].setCellValue("4"); c12[5].setCellValue("5"); c12[6].setCellValue("6"); c12[7].setCellValue("7"); c12[8].setCellValue("8"); c12[9].setCellValue("9"); c12[10].setCellValue("10"); c12[11].setCellValue("11"); c12[12].setCellValue("13"); c12[13].setCellValue("14"); c12[14].setCellValue("15"); c12[15].setCellValue("16"); Row rowItems[] = new Row[items.size()]; Cell cItems[][] = new Cell[items.size()][maxCols]; int startRow = 11; int endRow = 0; if(items.size() == 0){ endRow = startRow; } for(int i = 0; i < items.size(); i++){ rowItems[i] = sheet.createRow(i+startRow); for(int j = 0; j < cItems[i].length; j++){ cItems[i][j] = rowItems[i].createCell(j); cItems[i][j].setCellStyle(borderedCell); } cItems[i][0].setCellValue(items.get(i).getName()); cItems[i][1].setCellValue(1); cItems[i][2].setCellValue(items.get(i).getUnitCost()); cItems[i][3].setCellValue(items.get(i).getUnitCost()); cItems[i][4].setCellValue(items.get(i).getClassNumber()); cItems[i][5].setCellValue(items.get(i).getPropertyNumber()); cItems[i][6].setCellValue(items.get(i).getDateAcquired()); cItems[i][7].setCellValue(""); cItems[i][8].setCellValue(""); cItems[i][9].setCellValue(""); cItems[i][10].setCellValue(""); cItems[i][11].setCellValue(""); cItems[i][12].setCellValue(""); cItems[i][13].setCellValue(""); cItems[i][14].setCellValue(""); cItems[i][15].setCellValue(""); endRow = (i+startRow); } 

它应该是什么样子的截图

cItems [0] [0] = A13,cItems [0] [1] = B13,。 。 。

循环应该获取数据库中的每个项目,并从第13行开始显示。

顺便说一句,我使用Apache POI。 🙂

谢谢!

只是猜测。

可能是你应该最后调用sheet.addRow(row12)。 列row12.addColumn(column)也是一样。 并在sheet.close()结束。

所有这些只是猜测,我可能是完全错误的)。

如果你告诉我你正在使用什么样的库,那么我可能会更具体一些:)