使用poi-ooxml-3.17.jar
import org.apache.poi.xssf.usermodel.xssfworkbook;
import org.apache.poi.xssf.streaming.sxssfworkbook;
import org.apache.poi.xssf.streaming.sxssfsheet;
import org.apache.poi.ss.usermodel.cellstyle;
import org.apache.poi.ss.usermodel.cell;
import org.apache.poi.ss.usermodel.row;
@override
public
void
createexcel
(string name, string time, string id, map
model, map
sdmodel)
throws exception
else
workbook.
write
(outputstream)
; outputstream.
close()
;//這樣表示sxssfworkbook只會保留100條資料在記憶體中,其它的資料都會寫到磁碟裡,這樣的話占用的記憶體就會很少
sxssfworkbook sxssfworkbook =
newsxssfworkbook
(workbook,
100)
;//獲取第乙個sheet頁
sxssfsheet sheet = sxssfworkbook.
getsheetat(0
);cellstyle cellstyle = sxssfworkbook.
createcellstyle()
; cellstyle.
setalignment
(horizontalalignment.center_selection)
; cell cell;
row row;
list
titles =
(list
) model.
get(
"titles");
row = sheet.
createrow(0
);for(
int i =
0; i < titles.
size()
; i++
) list
varlist =
(list
) model.
get(
"varlist");
for(
int i =
0;i < varlist.
size()
;i++)}
//自動調整列寬
sheet.
trackallcolumnsforautosizing()
;for
(int i =
0; i < titles.
size()
; i++)if
("實驗室收入統計"
.equals
(name)
) varlist =
(list
) sdmodel.
get(
"varlist");
for(
int i =
0;i < varlist.
size()
;i++)}
//自動調整列寬
sheet.
trackallcolumnsforautosizing()
;for
(int i =
0; i < titles.
size()
; i++)}
outputstream =
newbufferedoutputstream
(new
fileoutputstream
(filepath));
sxssfworkbook.
write
(outputstream)
; outputstream.
flush()
; sxssfworkbook.
dispose()
;//釋放workbook所占用的所有windows資源
outputstream.
close()
;}
php 匯出excel大量資料方法
通過php輸出流方式匯出 php output是乙個可寫的輸出流,允許程式像操作檔案一樣將輸出寫入到輸出流中,php會把輸出流中的內容傳送給web伺服器並返回給發起請求的瀏覽器 儲存為csv檔案 csv是最通用的一種檔案格式,它可以非常容易地被匯入各種pc 及資料庫中,而xls則是excel專用格式...
excel匯出之大量資料 匯出壓縮包
匯出專案所有資料 匯出6萬以上資料。int pagesiz 50000 設定每乙個excel檔案匯出的數量 int page 頁數 計算分頁 page count pagesiz count pagesiz 0 1 0 string auto name primarykeygenerator.get...
海量資料匯出excel處理
在海量資料匯出excel的時候我們經常遇到記憶體溢位的問題,記憶體的溢位很有可能發生在兩個地方,第一種是查詢出海量的資料放入list集合的時候,第二種是根據集合生成excel的時候。我們記憶體的溢位通常是第二種,首先說一下第二種記憶體溢位的處理方法。在處理第二種記憶體溢位之前我們必須先了解excel...