對於execl的匯入匯出,用傳統poi操作比較麻煩,基於poi的一款框架easypoi非常方便
並且用map匯出更自由,可以實現不確定列的匯出
//我的專案時聚合工程所以版本在父依賴中
cn.afterturn
easypoi-base
$ cn.afterturn
easypoi-web
$ cn.afterturn
easypoi-annotation
$ //全部是4.0的版本
4.0.0
4.0.0
4.0.0
model類呢 需要和你要匯出的字段相對應
// 由於**太長,我貼上出前半部分
public class traininghomeworkvo implements serializable
// 把我們構造好的bean物件放到params就可以了
workbook workbook = excelexportutil.exportexcel(
new exportparams(traininghomework.gethomeworkname(), traininghomework.gethomeworkname()), collist,
list);
//通過檔案流寫入
bytearrayoutputstream outputstream = new bytearrayoutputstream();
workbook.write(outputstream);
outputstream.flush();
byte buf = outputstream.tobytearray();
outputstream.close();
inputstream inputstream = new bytearrayinputstream(buf);
string filename = traininghomework.gethomeworkname() + "_作業未提交人員名單.xls";
string realpath = request.getservletcontext().getrealpath("/");
string localaddress = "/" + mediaparam.media_type.file.getvalue() + "/"
+ filename.substring(0, filename.lastindexof(".")) + new date().gettime() + ".xls";
file filedir = new file(realpath + localaddress.substring(0, localaddress.lastindexof("/")));
if (!filedir.exists())
file file = new file(realpath + localaddress);
if (!file.exists()) '
this.inputstreamtofile(inputstream, file);
//檔案寫入的方法
public void inputstreamtofile(inputstream ins, file file)
} catch (filenotfoundexception e) catch (ioexception e) finally catch (ioexception e)
}}
棧的應用之迷宮
棧是後進先出的,棧分為順序棧和鏈棧 順序棧是由一組位址連續的儲存單元構成,依次存放從棧底到棧頂的資料元素 鏈棧是一組位址可不連續的儲存單元構成,鏈棧的建立過程類似於採用前插法建立鍊錶 注意程式中棧的操作,push pop gettop 等等。網上有一段利用棧完成的程式,可以拿來欣賞一下,首先感謝一下...
棧的應用之迷宮
利用棧對迷宮求解,採用的基本方法是回溯法,其實也算是一種暴力破解吧.畢竟是將乙個乙個方塊檢驗直至終點或者棧空。入棧 當棧頂元素方塊周圍有可行方塊時,將該可行方塊入棧 出棧 當棧定元素的方塊周圍都沒有可行方塊時,出棧 有幾點需要注意 1.當棧頂元素彈出時,我們又要重新對棧頂元素周圍的方塊進行檢驗,為避...
map類的應用
stl是標準c 系統的一組模板類,使用stl模板類最大的好處就是在各種c 編譯器上都通用。在stl模板類中,用於線性資料儲存管理的類主要有vector,list,map 等等。本文主要針對map物件,結合自己學習該物件的過程,講解一下具體用法。本人初學,水平有限,講解差錯之處,請大家多多批評指正。m...