異常
在使用POI讀取Excel文件內容時,發生了異常,報錯如下:
大概意思是不能從一個數值的列獲取一個字符串類型的值,我使用下面的代碼來獲取單元格的值:
//此處省略N行代碼 String cellValue = sheet.getRow(6).getCell(6).getStringCellValue(); //此處省略N行代碼
使用了getStringCellValue()方法來獲取值,POI會判斷單元格的類型,如果非字符串類型就會拋出上面的異常。
如下圖,讀取綠色框中的值不拋異常,讀取紅色框中值出拋出異常,POI認為這是一個數字。
解決
解決方法是在讀取某單元格時,使用setCellType()方法先將該單元格的類型設置為STRING,代碼如下:
//此處省略N行代碼 sheet.getRow(6).getCell(6).setCellType(CellType.STRING); String cellValue = sheet.getRow(6).getCell(6).getStringCellValue(); //此處省略N行代碼
這樣就會按字符串類型來讀取單元格了。