package com.cabletech.business.excel;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
/**
* 获取EXCEL文件工作表对象的工厂类
*
* @author 杨隽 2012-06-27 创建
*
*/
public class AutoGenerateFactory {
/**
* 根据文件名获取EXCEL工作表对象
*
* @param fileName
* String 文件名
* @return Workbook EXCEL工作表对象
* @throws Exception
*/
public static Workbook getWorkbook(String fileName) throws Exception {
InputStream in = new FileInputStream(new File(fileName));
String extName = getExtName(fileName);
Workbook wb = null;
if ("xls".equals(extName)) {
wb = new HSSFWorkbook(in);
}
if ("xlsx".equals(extName)) {
wb = new XSSFWorkbook(in);
}
in.close();
return wb;
}
/**
* 获取文件的扩展名
*
* @param fileName
* String 文件名
* @return String 文件的扩展名
*/
private static String getExtName(String fileName) {
int index = fileName.lastIndexOf(".") + 1;
return fileName.substring(index);
}
}