java使用poi導出excel防止數字變成科學計數法的形式


當使用POI導出Excel的時候,遇到了比較長的數字,雖然在Java代碼中使用了強制轉換為文本,但是輸出到Excel還是會變成數字類型,實際得到的是一個double,而且當長度大一點的時候就會變成科學計數法形式。

即使是加上POI提供的強制設置Excel單元格為文本類型的代碼,也對這個問題起不了關鍵性的作用。

HSSFCellStyle dataStyle = wb.createCellStyle();
dataStyle.setDataFormat(format.getFormat("@"));

因此這實際上是一個double怎么轉換成完全的字符串的問題了,這時候就可以使用DecimalFormat對這個double進行格式化,隨后使用format方法獲得的String就是你想要的值了。

DecimalFormat df = new DecimalFormat("0.00");
String whatYouWant = df.format(1234567890.666); 

通過這樣格式化之后,Excel就不能將該字符串識別為數字類型,並在長度較大的時候自動轉化成科學計數法形式了。

 

"成熟的可怕在於,很多曾經看起來很復雜的事情,現在一眼就看穿了。"


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM