poi匯入匯出

2021-10-24 06:39:06 字數 4144 閱讀 2090

org.apache.poi<

/groupid>

poi<

/artifactid>

4.1.2

.<

/dependency>

org.apache.poi<

/groupid>

poi-ooxml<

/artifactid>

4.1.2

<

/version>

<

/dependency>

匯入設定

("/import"

)//資料匯入 file是傳過來的檔案

public string dataimport

(modelmap mmap,

@param

("queryid"

) integer queryid,

@requestparam

(value=

"filename"

) multipartfile file)

boolean i***cel2003=

true

;//如果字尾名是xlsx就是2007版本的

if(filename.

matches

("^.+\\.(?i)(xlsx)$"))

inputstream inputstream=file.

getinputstream()

; workbook wb=null;

if(i***cel2003)

else

if(wb==null)

mmap.

put(

"msg"

,iqueryexportservice.

dataimport

(wb,tool.

getsessionuser()

));}

catch

(exception e)

else

if(e.

getmessage()

!=null&&e.

getmessage()

.indexof

("行資料匯入時出錯"

)>=0)

}else

}return prefix+

"/dataimport";}

判斷單元格型別

switch

(row.

getcell

(j).

getcelltype()

)else

break

;case string:

//文字型

map1.

put(

"value"

,row.

getcell

(j).

getstringcellvalue()

);break

;default

: map1.

put(

"value"

,row.

getcell

(j).

getstringcellvalue()

);break

;}

匯出模板:動態匯入,根據使用者選擇的字段進行模板匯出

(value =

"/queryexport"

)//匯出

}//建立第乙個單元格 行

row=sheet.

createrow(0

);row.

createcell(0

).setcellvalue

(tablehead)

;//把表頭的值賦給第乙個單元格

//設定表頭為黑體 大小為14 居中

hssfcellstyle titlestyle=wb.

createcellstyle()

; titlestyle.

setalignment

(horizontalalignment.center)

;//單元格內容水平居中

titlestyle.

setverticalalignment

(verticalalignment.center)

;//設定單元格內容垂直居中

//建立字型

hssffont titlefont=wb.

createfont()

; titlefont.

setfontheightinpoints((

short)14

);//設定字型大小

titlefont.

setfontname

("黑體");

//字型為黑體

titlestyle.

setfont

(titlefont)

;/*為標題設計空間

* firstrow從第1行開始

* lastrow從第0行結束

**從第1個單元格開始

* 從第3個單元格結束

*/if(list.

size()

>1)

row.

setheight((

short)(

26.25*20

)); row.

getcell(0

).setcellstyle

(titlestyle)

; row=sheet.

createrow(1

);//第二行的

row.

setheight((

short)(

22.50*20

));//設定行高

system.out.

println

(list)

; hssfcellstyle style=wb.

createcellstyle()

;for

(int i=

0;isize()

;i++

)}

response.

setcontenttype()

; outputstream os = response.

getoutputstream()

; templatename= urlencoder.

encode

(templatename,

"utf-8");

response.

setheader

("content-disposition"

,"attachment;filename="

+templatename+

".xls");

//預設excel名稱

wb.write

(os)

; os.

flush()

; os.

close()

;}

POI匯入匯出

利用poi可以實現excel檔案匯入和匯出功能 本例子結合了springboot做demo pom檔案 1.8 org.springframework.boot spring boot starter 1.5.4.release org.springframework.boot spring boo...

poi匯入匯出excel

org.apache.poigroupid poiartifactid 3.14 beta1version dependency public private string headtextname 列頭 標題 名 private string propertyname 對應欄位名 private ...

POI的匯入匯出

匯入測試 匯入的模板一定要按照格式準備,固定每列的內容 created by hp on 2018 9 18.public class poiimport 匯出測試 created by hp on 2018 9 18.public class poiexport poi匯入用的是jquery的oc...