POI 处理Excel

用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) {

	}

}

你可能感兴趣的:(java,poi,Excel)