關於poi word 文件生成的那些坑坑窪窪

2021-10-04 08:34:05 字數 2392 閱讀 5634

近期產品提了乙個需求,要求我們將查詢出來的資料以**的形式儲存在excel和word文件中,excel的單元格有強大的適應性和擴充套件性,基本無難度,但是word,嗯,要相容wps word和microsoft word,一言難盡。

/**

* 匯出word檔案

*/public

static xwpfdocument createxwpfdocument

(list

> data,list

fileds)

throws exception

//返回文件

return doc;

}/**

* 建立**的樣式標題

** @param document

*/public

static

void

createtitleparagraph

(xwpfdocument document)

/** * 建立單元格並儲存資料

** @param document

*/public

static

void

createcell

(xwpfdocument document, list

> data,list

fileds)

else

//獲取每列的列寬

long columnwidth =

newdouble

(math.

floor

(8000

/assetheadtemp.

size()

)).lon**alue()

;//遍歷要新增的資料的list

for(

int i =

0; i <= data.

size()

; i++

)else

else

} run.

setfontsize

(fontsize);}

}//刪除第一空白行

infotable.

removerow(0

);//寫完資料後調整單元格樣式

//設定**寬

cttbl table = infotable.

getcttbl()

; cttblpr pr = table.

gettblpr()

; cttblwidth tblw = pr.

gettblw()

; tblw.

setw

(biginteger.

valueof

(8000))

; tblw.

settype

(sttblwidth.dxa)

; pr.

settblw

(tblw)

; table.

settblpr

(pr)

; ctjc jc = pr.

addnewjc()

; jc.

setval

(stjc.left)

; pr.

setjc

(jc)

;//使布局固定,不隨內容改變寬度,這個非常非常非常重要,如果不固定布局,乙個單元格裡邊的字元長度成百上千的時候,單元格就會放飛自我,就像下邊的例圖一樣,慘不忍睹。另附一張加上下邊固定布局之後的**格式。。

cttbllayouttype t = pr.

issettbllayout()

?pr.

gettbllayout()

:pr.

addnewtbllayout()

; t.

settype

(sttbllayouttype.fixed);}

/** * 翻譯表頭資訊

* @return

*/private

static list

getassetheadtemp

(list

fileds)

else})

; system.out.

println

("獲得的表頭資訊是:"

POI Word文件的相關操作

首先是本文中需要用到的jar包 poi3.9 建立乙個word文件,並且建立 string outputfile d text test1.docx new document xwpfdocument document new xwpfdocument new table,生成乙個一行一列的 xwp...

文件的自動生成

結構圖顯示時,可看到兩類格式的標題,即內建標題樣式 標題1 至標題9 或大綱級別段落格式 級別 1 到級別 9 使用 文件結構圖不但可以方便地了解文件的層次結構,還可以快速定位 長文件,大大加快閱讀的時間。文件結構圖將在乙個單獨的窗格中顯示文件標題。可通過文件結 構圖在整個文件中快速漫遊並追蹤特定位...

python文件的自動生成

假設我們已經存在了乙個專案名為doc test,專案下存在乙個src資料夾,裡面存放我們的源 安裝sphinxpip install sphinx 建立文件生成的資料夾 建立乙個名為doc的資料夾,用來存放生成文件的指令碼及文件儲存。生成文件配置及執行指令碼 在doc資料夾下執行如下操作 sphin...