我对Apache项目有个问题。
我未能在XSSF和HSSF中使用“相同的Java类”。我应该下载哪个jar,或者应该将哪个工件添加到maven中?
我想同时处理xls和xlsx文件。当我得到excel版本错误时,我将将XSSF更改为HSSF或HSSF更改为XSSF。
我该怎么做?
发布于 2010-11-24 13:15:42
没有这样做,尝试使用ApachePOI3.7的新版本,它有SS包,它同时处理HSSF和XSSF,而不用担心类型
详细信息:http://poi.apache.org/spreadsheet/index.html
发布于 2012-08-15 15:45:29
除了“标准”SS包解决方案之外,您还可以简单地使用if statement将正确的workbook format加载到Workbook interface对象中,如下所示:
Workbook workbook; //<-Interface, accepts both HSSF and XSSF.
File file = new File("YourExcelFile.xlsx");
if (FileUtils.getFileExt(file).equalsIgnoreCase("xls")) {
workbook = new HSSFWorkbook(new FileInputStream(file));
} else if (FileUtils.getFileExt(file).equalsIgnoreCase("xlsx")) {
workbook = new XSSFWorkbook(new FileInputStream(file));
} else {
throw new IllegalArgumentException("Received file does not have a standard excel extension.");
}发布于 2018-01-29 14:27:13
使用工厂,它同时处理xssf和hssf
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
Workbook wb = WorkbookFactory.create(new File("file"))https://stackoverflow.com/questions/4266888
复制相似问题