POI操作EXCEL03前後版本不相容問題解決

2021-06-17 00:40:51 字數 1446 閱讀 3954

開發程式遇到讀取excel時,03前後的版本不相容,如下

/** workbook、sheet、row、cell等為介面; 

* hssfworkbook、hssfsheet、hssfrow、hssfcell為97-2003版本對應的處理實現類; 

* xssfworkbook、xssfsheet、xssfrow、xssfcell為2007+版本對應的處理實現類;

*/為了解決問題,對poi版本進行了公升級,引入新的jar包如下:

poi-3.9-20121203.jar

poi-excelant-3.9-20121203.jar

poi-ooxml-3.9-20121203.jar

poi-ooxml-schemas-3.9-20121203.jar

poi-scratchpad-3.9-20121203.jar

xmlbeans-2.3.0.jar

**如下:

import org.apache.poi.ss.usermodel.cell;

import org.apache.poi.ss.usermodel.row;

import org.apache.poi.ss.usermodel.sheet;

import org.apache.poi.ss.usermodel.workbook;

import org.apache.poi.ss.usermodel.workbookfactory;

public static list<?> readexcel(reportbean reportbean, object obj)

// 設定讀取引數

int startrow = reportbean.getstartrow();

int lastrow = sheet.getphysicalnumberofrows();

string fieldkeys = sheetbean.gettablebean().getfieldkeys();

// 開始讀取**內容

row row = null;

cell cell = null;

listlist = new arraylist();

for (int i = startrow; i <= lastrow; i++)

list.add(map);

}listentitys = new arraylist();

// json中轉方式

if (obj instanceof map<?, ?> || obj instanceof hashmap<?, ?>) else

return entitys;

} catch (filenotfoundexception e) catch (ioexception e) catch (exception e) finally catch (ioexception e) }}

}

poi 解析excel 03與07不相容問題

剛開始使用new hssfworkbook new fileinputstream excelfile 來讀取workbook,對excel2003以前 包括2003 的版本沒有問題,但讀取excel2007時發生如下異常 該錯誤意思是說,檔案中的資料是用office2007 xml儲存的,而現在卻...

poi解決excel 03 與 07不相容的問題

另外提供其他的解決方案 建立相關的檔案流物件 in new fileinputstream excelfile 宣告相關的工作薄物件 workbook wb null 宣告相關的excel抽取物件 excelextractor extractor null string filename excel...

使用POI操作Excel

apache的jakata專案poi http poi.apache.org 用來操作excel,並能滿足大部分需要.poi下面有幾個子專案,其中hssf xssf專案 http poi.apache.org spreadsheet index.html 用來實現excel讀寫的.public st...