试试: FileInputStream fis = new FileInputStream(filePath); POIFSFileSystem fs = new POIFSFileSystem(fis); HSSFWorkbook wb = new HSSFWorkbook(fs); HSSFSheet sheet = wb.getSheetAt(i); //行: for (Iterator it = sheet.rowIterator(); it.hasNext();) { HSSFRow row = (HSSFRow) it.next(); //列 for (Iterator cit = row.cellIterator(); cit.hasNext();) { HSSFCell cell = (HSSFCell) cit.next(); switch (cell.getCellType()) { case HSSFCell.CELL_TYPE_NUMERIC: insertStr.append((long) cell.getNumericCellValue()); break; case HSSFCell.CELL_TYPE_STRING: insertStr.append("'" + cell.getStringCellValue() + "'"); break; } } } }
public static HSSFCell[][] read2Array(String fileName) throws IOException { HSSFCell[][] res = null; HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(fileName)); for (int k = 0; k < wb.getNumberOfSheets(); k++) { HSSFSheet sheet = wb.getSheetAt(k); int rows = sheet.getPhysicalNumberOfRows(); res = new HSSFCell[rows][]; for (int ri = 0; ri < rows; ri++) { T.$("ri: "+ri); HSSFRow row = sheet.getRow(ri); int cols = row.getPhysicalNumberOfCells(); res[ri] = new HSSFCell[cols]; for (short col = 0; col < cols; col++) { res[ri][col] = row.getCell(col); } } }
POIFSFileSystem fs = new POIFSFileSystem(fis);
HSSFWorkbook wb = new HSSFWorkbook(fs);
HSSFSheet sheet = wb.getSheetAt(i);
//行:
for (Iterator it = sheet.rowIterator(); it.hasNext();) {
HSSFRow row = (HSSFRow) it.next();
//列
for (Iterator cit = row.cellIterator(); cit.hasNext();) {
HSSFCell cell = (HSSFCell) cit.next(); switch (cell.getCellType()) {
case HSSFCell.CELL_TYPE_NUMERIC:
insertStr.append((long) cell.getNumericCellValue());
break;
case HSSFCell.CELL_TYPE_STRING:
insertStr.append("'" + cell.getStringCellValue() + "'");
break;
}
}
}
}
HSSFCell[][] res = null; HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(fileName)); for (int k = 0; k < wb.getNumberOfSheets(); k++) { HSSFSheet sheet = wb.getSheetAt(k);
int rows = sheet.getPhysicalNumberOfRows();
res = new HSSFCell[rows][];
for (int ri = 0; ri < rows; ri++) {
T.$("ri: "+ri);
HSSFRow row = sheet.getRow(ri);
int cols = row.getPhysicalNumberOfCells();
res[ri] = new HSSFCell[cols];
for (short col = 0; col < cols; col++) {
res[ri][col] = row.getCell(col); }
} }
return res;
}