.XLSX 的excel檔案,使用的XSSFWorkbook讀取, new的時候引數使用的是filestream,報錯如上
1.嘗試使用HSSFWorkbook讀取,報錯如下:
The supplied data appears to be in the Office 2007+ XML. You are calling the part of POI that deals with OLE2 Office Documents. You need to call a different part of POI to process this data (eg XSSF instead of HSSF)。
這顯然不行,自己也就試試看
2.檔案確定不是其他型別改后綴的,抱著試試看態度,打開檔案另存為.XLSX,問題依舊
3.XSSFWorkbook在new的時候還可以以 filepath為引數,嘗試這個方法,問題解決。(這里會提示方法已經過時)
經過嘗試,問題可以解決了,但是其中原理是啥,完全沒頭緒,檢索也檢索不到有用資訊,哪位大神路過,請賜教啊
uj5u.com熱心網友回復:
XSSF操作的是Excel2007以上的版本,對應檔案的后綴名是xlsxHSSF操作的是Excel2003以前的版本,對應的檔案后綴名是xls
uj5u.com熱心網友回復:
其實后來的excel檔案是壓縮包,你直接解開可以讀取xml檔案uj5u.com熱心網友回復:
這個明白,我遇到的就是用XSSF打開.xlsx報錯了。new XSSF 的時候,引數給檔案流不行,直接給檔案路徑就能行。這個程序有點理解不了
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/239463.html
標籤:C#
上一篇:CKeditor圖片上傳問題
