簡體   English   中英

類型不匹配:無法從HSSFWorkbook轉換為Workbook

[英]Type mismatch: cannot convert from HSSFWorkbook to Workbook

我有下面的代碼。

Workbook srcWorkBook;
Workbook tgtWorkbook;
if((src.substring(src.lastIndexOf("."),src.length()).equals(".xlsx"))){
    srcWorkBook=new XSSFWorkbook(excelFileSrc);
}else{
    srcWorkBook=new HSSFWorkbook(excelFileSrc);
}

它可以通過獨立文件正常運行,但是在我的螞蟻編譯期間會拋出錯誤

 [javac] found   : org.apache.poi.hssf.usermodel.HSSFWorkbook
 [javac] required: org.apache.poi.ss.usermodel.Workbook

我檢查了我的類路徑,它沒有Jars的任何重復實例。 請幫忙

首先,該錯誤表明您或者在類路徑上擁有舊的Apache Apache POI jar副本,或者正在使用不匹配的POI jar。 這個POI FAQ條目的一些代碼,會幫助你跟蹤你真正使用的是什么罐子, 這個POI FAQ條目以獲得更多關於不支持的版本之間的混合POI罐子。

其次,您的代碼本身並不理想。 相反,您應該使用WorkbookFactory為您實例化正確的Workbook類。 將代碼更改為:

Workbook srcWorkBook = WorkbookFactory.create(new File(excelFileSrc));

這將為您識別文件類型,並為您創建正確的HSSFWorkbookXSSFWorkbook之一

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM