跳到主要內容區塊

計資中心電子報C&INC E-paper

專題報導

網頁套表匯出Word檔案
  • 卷期:v0046
  • 出版日期:2018-09-20

作者: 張如媚 / 臺灣大學計算機及資訊網路中心程式設計組幹事


系統設計時,常會遇到需要匯出檔案的需求,最為常見的匯出檔案格式包含Excel、Word、PDF等;本文將介紹如何經由XML,匯出Word文件。

 

目前常見的Word匯出方式

以下簡單介紹幾種Word匯出方式的優缺點,提供讀者參考,希望在系統設計時能根據其需求找到最為適用的Word檔案匯出方式。
 

1. 匯出方式較常見於網頁中直接定義「Content-Disposition」(指示MIME用戶代理如何顯示附加文件)與「ContentType」(表示 MIME 通訊協定的內容類型標頭),即可將輸出的網頁,轉換成word格式,供使用者下載。由於此方法是使用html直接轉換,適合依系統開發者常用的方式自行設計,格式較不受限外,設計上也較為有彈性。

 

2. 若為業務單位提供之特定Word格式,則可另存成html後,將html的部份剪貼到網頁,再以資料繫結的方式將欄位值代入前端頁面,可直接透過網頁設計工具,檢視輸出結果,並調整格式;但若檔案格式異動頻繁,則不適用此方式。因此方式的檔案格式需要系統開發者一一修改調整,較為耗時。

 

3. 使用Word提供之「合併列印」功能,使用者僅需下載範本及txt資料檔,再於用戶者端執行合併。由於文字檔內容僅有合併前的資料,檔案會比合併後再下載的小很多,速度快,適合一次匯出大量相同表單資料。

 

4. 透過xml做參數置換,非常的簡便,若格式變更只需開啟Word直接調整,可由業務單位自行變更;也是本文要介紹的匯出方式。

 

經由XML匯出

以下為透過XML做參數置換匯出之範例及操作步驟說明:

1. 開啟Word檢視現有文件,或自行製作範本,將需由系統代入的地方,加入自行定義的參數名稱,名稱可任意設定,但需注意其參數名稱必須為唯一,不可重覆定義。

 

Art editor Img
圖1:範例文件

 

2. 第二步驟便是要將其範本檔案另存為XML格式。方法如下:點選「檔案/另存新檔」,於另存新檔視窗中的「存檔類型」,下拉選擇「Word XML 文件 (*.xml)」後儲存。(參考圖2:另存檔案為XML文件)

 

Art editor Img
圖2:另存檔案為XML文件

 

3. XML文件為字串組成,可直接以記事本開啟檢視,試著搜尋自行設定之參數名稱,並確認其參數名稱是否存在。有時Word在轉換為XML時,會因格式造成問題,例如#name,輸出後,於記事本檢視,正確應為「#name」但有時會轉換成「#name」,這時則需自行修改內容,系統才能對應到正確的參數名稱。

 

Art editor Img
圖3:以記事本開啟檢視

 

程式撰寫範例說明。以C#為例,內建的XML元件讀取*.xml檔案後,轉換成字串,接著以字串置換的方式,將參數名稱置換成參數值,再指定匯出為Word檔案即可。

 

Art editor Img
圖4:C#程式範例(資料為測試資料)

 


圖5:實際匯出結果

 

結論

以XML方式將特定格式之Word匯出,變得非常簡便容易上手。當系統開發人員遇到表單異動頻繁的需求時,可以利用此方式使其作業流程簡化,並減少系統開發人員的負擔。