java通過模板生成 word

2021-09-01 23:09:37 字數 693 閱讀 7381

最近專案要匯出world的報告, 在網上查閱了下相關資料。發現使用模板方式比較適合我們的專案。為自己記錄下.

1. 建立word文件,並另存為xml格式.

3. 使用模板生成 word文件.

這裡簡單說下另存為後的xml模板(我使用的是word2007.)

如果存在,模板中會有類似這樣語法

這裡要注意的是,id不能以數字開頭。(不知道為什麼)。而id和target不一定必須使用它自動生成的值,可以改為其它值(它只是為了和下面的值對應而已,沒有特別的意義),但要注意id不能和其他id重複。

而存放的位置可能會像下面這樣顯示

其中的id就是上面定義的id了.

那麼它的真正存在於何處呢?其實在文件中我們可以發現有些使用了base64加密的內容. 存在於類似下面的元素中

/9j/4aaqskzjrgabageayabgaad/

這裡我只貼上了部分base64內容,實際上會很長。這不是重點,然後我們會注意到pkg:name這個屬性。是的,它的值就是上面定義的target屬性前加了乙個固定的值/word/.

其實我們只要注意看,會發現它每部分都是由

元素開始的,我們基本上可以根據它的pck:name屬性來決定我們要修改的部分。

第一次寫,寫的感覺不是很明白,希望看到的朋友們多指教。

Java根據word模板生成word文件之總結

至此word生成就完事了,我寫的有點粗,但是應該能看到的懂,沒有經過重構,很亂,而且方法體應該還需要調整,但是不影響我們的功能實現。通過這一整套流程,其實完全可以做成乙個元件式的東西,我現在沒有時間去考慮他,大家有時間好好考慮一下,完全做到可配置話的,我現在能做到單個標籤,的定義即可配置化,但是如果...

根據模板生成word

var product list product list賦值 var filename 文件模板.docx var filernd upload temp session.sessionid.tostring parseint math.random 1000000 docx var fso ne...

使用freemarker模板生成word文件

專案中最近用到這個東西,做下記錄。如下圖,先準備好乙個 office2003 word文件當做模板。文件中 姓名 性別和生日已經使用佔位符代替,生成過程中將會根據實際情況進行替換。然後將word文件另存為 word xml文件 完成後,將test.xml重新命名為test.ftl。接下來,實現 如下...