阅读多个excel表

我试图阅读一张电子表格的表格。 我想知道这是正确的阅读方式,特别是使用Sheet Propety [在代码中突出显示]:

Cell[][] newcell=new Cell[200][200]; int newsheet = workbook1.getNumberOfSheets(); for (int q=1;q < newsheet;q++) { for(int p=0;p < sheet(q).getColumns();p++) { for(int p1=0;p1<sheet(q).getRows();p1++) /*^^^^^^^^^*/ { newcell[p][p1] = sheet(q).getCell(p, p1); /*^^^^^^^^^*/ if(newcell[p][p1].equals(saved[j])) { System.out.print( newcell[p][0]); } } } } 

我可以使用sheet()的属性作为表(q),因为它抛出NullPointerExeption吗?

处理POI中所有单元格的常用方式是:

 for(int sheetNum=0; sheetNum < wb.getNumberOfSheets(); sheetNum++) { Sheet sheet = wb.getSheetAt(sheetNum); for (Row row : sheet) { for (Cell cell : row) { // Do something here } } } 

也许把你的代码转换成更像这样的东西?

使用jxl ( JExcelAPI ),这应该工作:

 for (Sheet sheet:workbook1.getSheets()) { // getSheet() returns a Sheet[] int numCols = sheet.getColumns(); // getColumns() returns an int for(for int i = 0; i <= numCols; i++) { Cell[] column = sheet.getColumn(i); for(Cell cell:column) { // column is a Cell[] if(cell.equals(saved[j])) { System.out.print(cell); } } } }