1. 程式人生 > >java使用POI解析Excel表格中由純數字組成的字串報錯問題&解決資料自動儲存為科學計數法問題

java使用POI解析Excel表格中由純數字組成的字串報錯問題&解決資料自動儲存為科學計數法問題

1.在解析Excel表格中由純數字組成的字元時會報錯

String telephone = row.getCell(1).getStringCellValue();
在得到一個字串型別的手機號碼時報錯:

java.lang.IllegalStateException: Cannot get a text value from a numeric cell

2.然後為了解決這個問題:用getNumericCellValue()方法得到數字在轉換為字串

String telephone = row.getCell(1).getNumericCellValue()+"";
3.然後問題又出現了:發現儲存到資料庫的資料都是用科學計數法的格式,因為
無論數字是否小數,使用cell.getNumbericCellValue() 去獲取值的時候,會得到一個double,而且當長度大一點的時候會變成科學計數法形式。


4.解決這個問題我們可以使用DecimalFormat對double型別資料進行格式話,然後使用format方法獲得的String:

DecimalFormat df = new DecimalFormat("0"); 
String telephone = df.format(row.getCell(1).getNumericCellValue());