溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么解決poi導出時單元格樣式被覆蓋問題

發(fā)布時間:2021-11-29 10:45:06 來源:億速云 閱讀:198 作者:iii 欄目:開發(fā)技術

本篇內(nèi)容主要講解“怎么解決poi導出時單元格樣式被覆蓋問題”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么解決poi導出時單元格樣式被覆蓋問題”吧!

poi導出時單元格樣式被覆蓋

在poi操作時對每個單元格進行樣式設置,出現(xiàn)的問題是單元格樣式被覆蓋了?

如何解決這一問題????

解決方法

這里使用到了CellStyle 的一個方法 void cloneStyleFrom(CellStyle var1);

創(chuàng)建一個不影響使用的cell 然后設置樣式

在創(chuàng)建一個新的cell使用

createCellStylecopy.cloneStyleFrom(oldercell.getCellStyle());    // 克隆出一個 style

其他的樣式可以在createCellStylecopy中設置,然后設置給新的cell

poi的cellstyle陷阱,樣式覆蓋

問題

cell.getCellStyle().setFont(font);

這句話本來只是想設置這一個單元格cell的字體樣式,但是實際上卻影響了很多個單元格的樣式。

問題出在了,Excel模板中這些單元格本來就是同一個樣式,get得到的樣式修改,影響的當然也是全部的

解決方法

但是直接創(chuàng)建的樣式的話,會丟失Excel模板中原來就有的樣式,所以這里使用到了CellStyle 的一個方法

void cloneStyleFrom(CellStyle var1);

保證了既可以新建一個CellStyle,又可以不丟失原來的CellStyle 的樣式

問題的那段代碼可以寫成如下:

//解決單元格樣式覆蓋的問題
CellStyle cStyle = book.createCellStyle();
cStyle.cloneStyleFrom(cell.getCellStyle());
cStyle.setWrapText(true);
cStyle.setFont(font);
cell.setCellStyle(cStyle);

到此,相信大家對“怎么解決poi導出時單元格樣式被覆蓋問題”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關內(nèi)容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

poi
AI