我有一个Apache POI项目的问题。Apache POI,同时使用XSSF和HSSF
我在“相同Java类”中未能使用XSSF
和HSSF
。我应该下载哪个jar文件或者我应该添加哪些工件添加到maven中?
我想同时处理xls
和xlsx
文件。当我遇到excel版本错误时,我会将XSSF更改为HSSF或HSSF更改为XSSF。
我该怎么做?
我有一个Apache POI项目的问题。Apache POI,同时使用XSSF和HSSF
我在“相同Java类”中未能使用XSSF
和HSSF
。我应该下载哪个jar文件或者我应该添加哪些工件添加到maven中?
我想同时处理xls
和xlsx
文件。当我遇到excel版本错误时,我会将XSSF更改为HSSF或HSSF更改为XSSF。
我该怎么做?
而是这样做的,尽量使用Apache POI 3.7的新版本,它具有SS包,它可以同时处理HSSF和XSSF无需担心类型
除了“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.");
}
使用工厂代替其^ h andles both xssf and hssf
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
Workbook wb = WorkbookFactory.create(new File("file"))
首先感谢您的帮助。 我检查了你提到的页面。好。我在我的pom.xml中添加下面的代码: org.apache.poi POI-的contrib 3.7 beta3版 然而,尽管我的Java类仍然无法解析XSSFWorkbook? HSSFWorkbook()上没有问题;工作簿[] wbs = new Workbook [] {new HSSFWorkbook(),new XSSFWorkbook()}; –
2010-11-24 20:43:58
XSSFWorkbook在groupId中:org.apache.poi,artifactId:poi-ooxml – rlovtang 2010-11-24 21:48:23