我使用poi-3.2-FINAL-20081019.jar
。错误:
类型不匹配:无法从HSSFWorkbook转换为工作簿
try {
if (strType.equals("xls")) {
wb = new HSSFWorkbook(inputStream);
} else {
wb = new XSSFWorkbook(inputStream);
}
Sheet sheet = wb.getSheetAt(0);
如何解决?
答案 0 :(得分:1)
当你的罐子里的日期显示 - poi-3.2-FINAL-20081019.jar
时 - 你就会使用一个差不多10年的罐子!你需要升级到更现代化的东西,至少从这十年来的东西......
目前(2017年11月),最新版本是Apache POI 3.17。您可以在Apache POI homepage上找到最新版本,并查看Changelog
中的所有修补程序此外,您应该交换使用WorkbookFactory而不是查看文件扩展名来确定要使用的类。这隐藏了所有检测复杂性,适用于错误命名的文件等
您的代码可以变得非常简单
Workbook wb = WorkbookFactory.create(new File("input.xlsx"));
Sheet s = wb.getSheetAt(0);
(如果可以,请使用File
,而不是InputStream
,以降低内存容量。
答案 1 :(得分:0)