1. 程式人生 > >利用Freemarker生成doc檔案(包含list迴圈,ifelse判斷,合併單元格,嵌入表格單元格字數過多報錯等)

利用Freemarker生成doc檔案(包含list迴圈,ifelse判斷,合併單元格,嵌入表格單元格字數過多報錯等)

1、利用office等軟體開啟doc文件,另存為word2003xml形式的檔案。
2、修改xml中的需要動態生成的值,Freemarker變數為${data}格式的,修改完改成ftl字尾,複製到載入Freemarker的專案裡即可
3、詳細步驟請移步百度
一個稍微大點的doc檔案轉換為xml程式碼就有20000多行,怎麼看!!!操作xml格式的檔案推薦用xmlSpy,移步走你
重點之list迴圈
這裡寫圖片描述

    <#list list as item>
        <w:t>${item.name}</w:t>
    </#list>

重點之list的第一個元素的判斷

    <#list be.list13 as item>

    </#list>

在遍歷list中,通過 item_index 可獲取索引值,item_index==0即為第一個元素的索引值的判斷
重點之ifelse判斷
這裡寫圖片描述

        <#if item_index == 0> 
            *內容*
        <#else>
            *內容*
        </#if>

重點之解決嵌入表格單元格字數過多報錯
可以從後臺傳值的時候處理一下,<w:br />為換行符
重點之合併單元格


這可就厲害了,word哥
首先百度一大堆講的<w:vmerge w:val="restart"/><w:vmerge/>
並沒有好的例項
這裡寫圖片描述
可見1號線實現了合併單元格
如何實現的呢:
思路:(利用list如何判斷當前元素是第一個元素)第一個元素時用<w:vmerge w:val="restart"/>和要顯示的內容
這裡寫圖片描述
然後其他list元素要與之合併的用<w:vmerge/>
這裡寫圖片描述
這裡的內容可以為空,也可以自己設定

相關推薦

利用Freemarker生成doc檔案包含list迴圈ifelse判斷合併單元嵌入表格單元字數多報

1、利用office等軟體開啟doc文件,另存為word2003xml形式的檔案。 2、修改xml中的需要動態生成的值,Freemarker變數為${data}格式的,修改完改成ftl字尾,複製到載入

Python生成.exe檔案包含下載安裝

上午都在py2exe這個坑裡面,後面用了pyinstaller跳出來了。 一.首先需要安裝python python下載官網:https://www.python.org/downloads/windows/,我的電腦目前是裝了win64的python3.5,需要說明的是

利用VBA將excel資料表生成JSON檔案utf8

ADODB.Stream建立UTF-8+BOM編碼的文字檔案。然後遍歷資料區,格式化資料,輸出即可。小資料還行,大資料沒測試。另,使用fso建立的文字檔案編碼為ANSI,ajax解析json時出現亂碼無法正常解析。 Sub ToJson() '建立UTF8文字檔案

JAVA利用FreeMarker生成匯出Word文件

一、首先下載相對應的jar包:freemarker.jar; 而我的專案環境是:maven 在pom.xml中: <dependency> <groupId>freemarker</groupId> <artifactId>f

Eclipse匯出可執行Java工程/可執行Jar檔案包含第三方Jar包

1. 首先,右鍵你的Java工程,選擇Export,在Java資料夾下選擇Runnable JAR file,如下圖所示: 2. 選擇Runnable JAR file後,會彈出如下所示的對話方塊,選擇好匯出路徑後,預設Finish其實就可以了。但是需要注意的是兩點:

易語言基礎——遍歷指定目錄下的所有檔案包含子目錄中的檔案

1.實現效果: 尋找指定目錄下的檔案(包括子目錄中的檔案) 2.知識點: 尋找到的檔名 = 尋找檔案 (檔案目錄 + “\*.*”,1 + 2 + 4 + 16 + 32 ), *.*為正則表示式的寫法,*是萬用字元; 尋找到的檔名 = 尋找檔案 (, 1 + 2 + 4 + 16 + 32

利用poi生成excell檔案

首先建立一個實體類與資料庫查詢出來的欄位對應 package entity; /** * 學生實體類 * @author Administrator * */ public class Student { private int id; private String nam

Java 利用 poi 生成 Excel檔案的通用例子

在用java 寫資料庫應用的時候, 通常會生成各種報表,而這些報表可能會被匯出為各種格式的檔案,比如Excel文件,pdf 文件等等. 今天先做了一個生成Excel 文件的例子,主要解決以下問題: 生成 Excel 文件. 保護生成Excel文件,設定密碼訪問. 自動對生成的Exce

獲取指定目錄下指定副檔名的檔案包含子目錄中的把這些檔案的絕對路徑寫入到一個文字檔案中。

題目: 獲取指定目錄下,指定副檔名的檔案(包含子目錄中的),把這些檔案的絕對路徑寫入到一個文字檔案中。 思路: 1.必須深度遍歷 2.要在遍歷的過程中進行過濾,將符合條件的內容儲存到容器中 3.對容器中的內容進行遍歷並將絕對路徑寫入到檔案中 程式碼: import java.io

asp.net使用WSDL地址生成cs檔案代理類的自動生成

之所以寫這篇文章,是因為現公司在與外部專案對接時使用WSDL對接。 然而VS2010之前的版本都能在VS工具欄內找到自帶的wsdl工具的使用。而我恰好使用的vs2017,沒有這個工具,並且對接的wsdl帶了賬號密碼的驗證。Google了老半天,也沒找出需要帶賬號密碼驗證

構建專案生成檔案.mvn、mvnw、mvnw.cmd、.gitignore

.gitignore–分散式版本控制系統git的配置檔案,意為忽略提交   在 .gitingore 檔案中,遵循相應的語法,在每一行指定一個忽略規則。如:   .log   .temp   /vendor mvnw–全名是maven wrapper   它的原

Echarts 地圖生成 以及生成geojson檔案附帶完整程式碼

前言:需要實現的效果就是生成省級地圖,點選省級地圖中的市切換至市級地圖。為了自己方便查閱,也方便大家使用。 效果如下: 所用的外掛 使用方法: 1、頭部引入(官網下載地址:點這裡下載檔案) <!-- 引入 ECharts 檔案 --> <

如何利用python將.doc檔案轉換為.docx檔案

前面寫了很多利用python-docx批量處理word檔案的教程,但是python-docx不支援doc格式,因此如何將doc檔案轉為docx檔案就是一個需要解決的問題,如果檔案少可以另存為,如何檔案多

利用freemarker生成模板

在cms中使用freemarker將頁面生成html檔案,本節測試html檔案生成的方法: 1、使用模板檔案靜態化 定義模板檔案,使用freemarker靜態化程式生成html檔案。 2、使用模板字串靜態化 定義模板字串,使用freemarker靜態化程式生成html檔案。 使用模板檔案靜態

VBA/VBScript提取Word(*.doc)檔案包含的圖片(照片)

要處理的人事簡歷表是典型的Word文件,其中一人一份doc,裡面包含有個人的照片,如果要把裡面的照片複製出來就比較麻煩了,一般手動的做法是選擇檔案另存為,儲存型別選擇“網頁(*.htm; *.html)”,這樣就會另存為網頁形式,同時會有個以檔名開頭,以.files結尾的資料夾,點選進去就可以看到Word

Android端解壓zip檔案包含中文目錄

這篇部落格不算原創,原作者的文章對我起到很大作用,我這裡就算是做個筆記,因為不滿足轉載的條件,所以也不算轉載。 好的,感謝原作者的技術分享,幾乎不需要更改什麼。感謝感謝,原文地址:點選開啟連結 上程式碼: /**   * 使用 org.apache.tools.zip.

關於Android Studio3.0版本把專案打包生成apk檔案安卓手機下載可執行

為了能在手機上體驗開發的專案實際體驗效果,故而查詢學習了,如何生成apk檔案。方法如下:首先在選單欄點選Build,再點選Generate Signed APK得到下圖,並點選Create new...下面Key store path:生成的jsk檔案等路徑設定Passwor

利用FreeMarker生成java原始碼

一 FreeMarker簡介 Apache FreeMarker is a template engine: a Java library to generate text output (HTML web pages, e-mails, co

c#遞迴遍歷指定資料夾內的所有檔案包含子資料夾

c#程式碼: public class DirectoryAllFiles { static List<FileInformation> FileList = n

java 利用 poi 生成 Excel檔案與spring使用檔案流形式下載檔案

本文為結合參考資料整合而來。 第一步導包: 三個jar: poi poi-ooxml poi-ooxml-schemas maven: <properties> <poi.version>3.12</p