用POI处理Excel的代码
记录下来
记录下来
package com.zas.test;
import java.io.File;
import java.io.FileInputStream;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
public class ExcelTool {
/**
* 根据Excel文件路径处理Excel
* @param path
* @return 处理后的数据
* @throws Exception
* @author zas
*/
public static Object getListData(String path) throws Exception {
File f = new File(path);
//Workbook wb = WorkbookFactory.create(new FileInputStream(f));
Workbook wb = null;
try {
wb = new XSSFWorkbook(new FileInputStream(f));
} catch (Exception ex) {
wb = new HSSFWorkbook(new FileInputStream(f));
}
// 可以处理多个 sheet
for (int indexSheet = 0; indexSheet < wb.getNumberOfSheets(); indexSheet++) {
Sheet sheet = wb.getSheetAt(indexSheet);
if (null == sheet || sheet.getLastRowNum() == 0) {
continue;
}
for (int indexRow = sheet.getFirstRowNum(); indexRow <= sheet.getLastRowNum(); indexRow++) {
Row row = sheet.getRow(indexRow);
for (int indexCell = row.getFirstCellNum(); indexCell <= row.getLastCellNum(); indexCell++) {
Cell cell = row.getCell((short) (indexCell));
if (cell == null) {
continue;
}
switch (cell.getCellType()) {
case Cell.CELL_TYPE_NUMERIC:
break;
case Cell.CELL_TYPE_STRING:
break;
case Cell.CELL_TYPE_BLANK:
break;
case Cell.CELL_TYPE_BOOLEAN:
break;
case Cell.CELL_TYPE_ERROR:
break;
default:
break;
}
}
}
}
return null;
}
public static void main(String[] args) {
}
}