poi讀取Excel檔案,數字的處理問題

2021-08-20 11:34:05 字數 498 閱讀 2820

poi讀取excel檔案時,長一點的數字自動變成了科學計數法,短的數字自動加上了」.0」,一開始不知道有這個問題,測試了下才發現這個問題,,也試了好多辦法去解決,,今天發現個完美解決的辦法。

numberformat nf = numberformat.getinstance();

hssfcell num= hssfrow.getcell(0);

string s = nf.format(num.getnumericcellvalue());

//這種方法對於自動加".0"的數字可直接解決

//但如果是科學計數法的數字就轉換成了帶逗號的,例如:12345678912345的科學計數法是1.23457e+13,經過這個格式化後就變成了字串「12,345,678,912,345」,這也並不是想要的結果,所以要將逗號去掉

if (s.indexof(",") >= 0)

//此時得到的結果s就是從excel單元格中填寫的資料

利用POI讀取Excel檔案

前幾天實現了利用poi建立excel檔案,今天分享一下如何利用poi讀取excel檔案。要讀取的檔案內容,以下截圖已給出 下面講讀取檔案內容的方法。先建立乙個讀取excel的工具類。操作excel 的功能類 public class excelreader catch ioexception e 獲...

poi讀取excel檔案的再次實踐

之間使用過poi相關api來讀取excel檔案,之前的讀取內容的策略在某些情況下不適用,因為合併的列可能位置多種多樣,如何能正確讀取到真正儲存的資料呢?今天問了同事乙個問題,然後他告訴我說有乙個很好的方法來解決問題讀取資料的問題,那就是獲取sheet中所有合併的單元格集合,然後再遍歷的時候,如果該單...

用poi讀取Excel檔案的CellType

昨天做了乙個將excel中準備的資料轉化成對應的sql的功能。其實核心就是用poi庫去讀取excel檔案就好了。由於excel檔案不同於純文字的csv或其他檔案,其本身的資料物件 即乙個cell 是有型別的。不能將所有的資料都當做string來處理,在讀取時首先要判斷當前cell的celltype。...