如何在 C# 中導出文檔至 Word
IronWord 讓 C# 開發人員能透過簡單的程式碼,將資料匯出至 WORD 文件。 只需幾行代碼,您就能建立、填入內容並儲存包含文字、格式及複雜文件結構的 DOCX 檔案。
Microsoft WORD 是一款廣為使用的文件建立與編輯工具,以其多樣化的功能和友善的使用者介面而聞名。 在軟體開發過程中,無論是為了製作報告、撰寫文件或呈現資料,經常需要透過程式碼生成 WORD 文件。 無論您是建置自動化報表系統、生成發票、建立動態範本,還是從資料庫記錄中批次產出文件,將資料匯出為 WORD 格式的能力都能為您節省無數小時的手動作業時間。
在本指南中,我們將探討如何建立新的 [C#](https://en.wikipedia.org/wiki/C_Sharp_(programming_language) 控制台應用程式,並利用 IronWord(一個用於程式化操作 Word 文件的實用程式庫),將資料匯出至 MS Word 文件。 完成本教學後,您將掌握從專案設定到生成首份包含自訂內容的 WORD 文件的完整工作流程。
如何在 C# 中將文件匯出為 WORD 格式?
- 建立一個新的 C# Visual Studio 專案。
- 安裝 C# Word 庫,以便將資料匯出到 Word。
- 導入 Word 庫的依賴項。
- 使用"new
WordDocument(paragraph)"方法建立一個新的 Word 文件。 - 使用"
SaveAs()"函數儲存新建立的 Word 文件。
如何建立新的 C# 主控台應用程式?
若要在 Visual Studio 中建立新的 C# 控制台應用程式,請依照下列步驟操作。 "主控台應用程式"範本提供了一個簡單的起點,讓您在將此功能整合至 Web 服務或桌面軟體等大型應用程式之前,先學習如何處理 WORD 文件生成。
1.開啟 Visual Studio。 在啟動畫面中,請選擇"建立新專案"。
Visual Studio 啟動畫面顯示"建立新專案"按鈕以高亮顯示,用於開始建立新的 C# 控制台應用程式。
- 選取"主控台應用程式",然後按一下"下一步"。 若出現多個選項,請選擇 C# 版本。
Visual Studio 中的專案範本選擇視窗顯示控制台應用程式範本選項,並套用了 C# 語言篩選器。
- 輸入專案名稱與位置。 點擊"下一步",選擇 .NET 6.0 或更高版本,然後點擊"建立"。
什麼是 IronWord,我為什麼要使用它?
IronWord 是一個 .NET 函式庫,它提供了一個方便的 API,用於在 C# 中處理 Word 文件。 它讓開發人員能夠在 C# 應用程式中建立 WORD 文件、修改現有文件,並將其匯出。 使用 IronWord,您可以根據來自各種來源(例如資料庫、API 或使用者輸入)的資料動態產生 Word 文件。 此函式庫處理所有複雜的底層 Office Open XML 規格,讓您能專注於業務邏輯,而非文件格式的繁瑣細節。
IronWord 在 WORD 文件處理方面具備多項優勢。 與某些需在伺服器或開發機器上安裝 Microsoft Office 的替代方案不同,IronWord 具備獨立運作能力,使其成為雲端部署、容器化應用程式,以及無法安裝 Office 環境中的理想選擇。 此函式庫支援多種文件元素,包括段落、表格、圖片、頁首、頁尾、樣式及格式選項,讓您能完全掌控文件的外觀與結構。
如何在我的專案中安裝 IronWord?
您可以使用 NuGet 套件管理器依照下列步驟輕鬆安裝 IronWord。 NuGet 是 .NET 的標準套件管理系統,能讓函式庫的安裝與版本管理變得簡單且可靠。
- 在 Visual Studio 中,開啟 NuGet 套件管理器窗口,然後前往"瀏覽"標籤。
- 在"瀏覽"索引標籤中,於搜尋列輸入 IronWord 並按下 Enter 鍵。
- 將顯示包裹清單。 選擇最新的套件並點擊"安裝"。
Visual Studio 中的 NuGet 套件管理器視窗顯示 IronWord 套件搜尋結果,其中"安裝"按鈕可見。
安裝完成後,IronWord 即可立即使用。 安裝程序會自動處理所有依賴項,並適當設定您的專案參照。
如何使用 IronWord 將資料匯出至 WORD 文件?
讓我們先透過一個實用範例,說明如何使用 C# 中的 IronWord 將資料匯出至 WORD 文件。 請參考以下程式碼片段,其中展示了建立簡單 WORD 文件的基本流程:
using IronWord;
using IronWord.Models;
System.Console.WriteLine("Enter the Text to export it to word document");
var userInput = System.Console.ReadLine();
// Create textRun which is a part of a paragraph content
Text textRun = new Text(userInput);
Paragraph paragraph = new Paragraph();
paragraph.AddChild(textRun);
// Create a new document object and add the paragraph to it
WordDocument doc = new WordDocument(paragraph);
// Export document to "document.docx" file
doc.SaveAs("document.docx");
using IronWord;
using IronWord.Models;
System.Console.WriteLine("Enter the Text to export it to word document");
var userInput = System.Console.ReadLine();
// Create textRun which is a part of a paragraph content
Text textRun = new Text(userInput);
Paragraph paragraph = new Paragraph();
paragraph.AddChild(textRun);
// Create a new document object and add the paragraph to it
WordDocument doc = new WordDocument(paragraph);
// Export document to "document.docx" file
doc.SaveAs("document.docx");
Imports IronWord
Imports IronWord.Models
System.Console.WriteLine("Enter the Text to export it to word document")
Dim userInput = System.Console.ReadLine()
' Create textRun which is a part of a paragraph content
Dim textRun As New Text(userInput)
Dim paragraph As New Paragraph()
paragraph.AddChild(textRun)
' Create a new document object and add the paragraph to it
Dim doc As New WordDocument(paragraph)
' Export document to "document.docx" file
doc.SaveAs("document.docx")
在這個例子中,我們將建立一個簡單的 Word 文檔,其中包含一個段落,內容為使用者提供的文字。 讓我們一步一步地分析程式碼:
1.導入所需庫:我們先從 IronWord 導入必要的命名空間。 IronWord 命名空間包含主要文件類,而 IronWord.Models 提供內容模型類。
2.建立文字內容:我們建立一個 Text 對象,表示我們要包含在 Word 文件中的文字內容。 在這種情況下,它是從控制台收集到的 userInput。
3.建立段落:接下來,我們建立一個 Paragraph 對象,並將 Text 物件 (textRun) 作為子元素加入到該物件中。 WORD 中的段落通常包含一個或多個文字區塊,允許在同一段落內混合使用不同格式。
4.建立 Word 文件:我們實例化一個新的 WordDocument 對象,並將我們創建的段落作為參數傳遞。 這將使用指定的內容建立一個新的 Word 文件。
5.匯出文件:最後,我們呼叫 SaveAs 方法,將 WordDocument 物件匯出為名為"document.docx"的 .docx 檔案。預設情況下,該檔案會保存在應用程式的工作目錄中。
本範例示範了使用 IronWord 將資料匯出到 Word 文件的基本工作流程。 您可以根據具體需求,自訂現有 WORD 文件的內容與結構。 例如,您可以新增多個段落、設定文字格式、插入表格、圖像、頁首、頁尾等等。
主控台輸出看起來是什麼樣子?
生成的 WORD 文件會是什麼樣子?
如何在 WORD 文件中加入更複雜的內容?
雖然基本範例僅展示簡單的文字匯出功能,但 IronWord 支援更為複雜的文件建立功能。 以下範例展示如何加入包含多個段落及樣式的格式化文字:
using IronWord;
using IronWord.Models;
// Create a document with multiple formatted paragraphs
WordDocument doc = new WordDocument();
// Add a title paragraph with bold formatting
Paragraph titleParagraph = new Paragraph();
Text titleText = new Text("Sales Report Q4 2024");
titleText.Style = new TextStyle() { Bold = true, FontSize = 24 };
titleParagraph.AddChild(titleText);
doc.AddChild(titleParagraph);
// Add a regular paragraph with mixed formatting
Paragraph contentParagraph = new Paragraph();
Text normalText = new Text("Total revenue for Q4 was ");
Text emphasizedText = new Text("$1.2 million");
emphasizedText.Style = new TextStyle() { Bold = true, Italic = true };
Text endText = new Text(", exceeding projections by 15%.");
contentParagraph.AddChild(normalText);
contentParagraph.AddChild(emphasizedText);
contentParagraph.AddChild(endText);
doc.AddChild(contentParagraph);
// Save the formatted document
doc.SaveAs("quarterly_report.docx");
using IronWord;
using IronWord.Models;
// Create a document with multiple formatted paragraphs
WordDocument doc = new WordDocument();
// Add a title paragraph with bold formatting
Paragraph titleParagraph = new Paragraph();
Text titleText = new Text("Sales Report Q4 2024");
titleText.Style = new TextStyle() { Bold = true, FontSize = 24 };
titleParagraph.AddChild(titleText);
doc.AddChild(titleParagraph);
// Add a regular paragraph with mixed formatting
Paragraph contentParagraph = new Paragraph();
Text normalText = new Text("Total revenue for Q4 was ");
Text emphasizedText = new Text("$1.2 million");
emphasizedText.Style = new TextStyle() { Bold = true, Italic = true };
Text endText = new Text(", exceeding projections by 15%.");
contentParagraph.AddChild(normalText);
contentParagraph.AddChild(emphasizedText);
contentParagraph.AddChild(endText);
doc.AddChild(contentParagraph);
// Save the formatted document
doc.SaveAs("quarterly_report.docx");
Imports IronWord
Imports IronWord.Models
' Create a document with multiple formatted paragraphs
Dim doc As New WordDocument()
' Add a title paragraph with bold formatting
Dim titleParagraph As New Paragraph()
Dim titleText As New Text("Sales Report Q4 2024")
titleText.Style = New TextStyle() With {.Bold = True, .FontSize = 24}
titleParagraph.AddChild(titleText)
doc.AddChild(titleParagraph)
' Add a regular paragraph with mixed formatting
Dim contentParagraph As New Paragraph()
Dim normalText As New Text("Total revenue for Q4 was ")
Dim emphasizedText As New Text("$1.2 million")
emphasizedText.Style = New TextStyle() With {.Bold = True, .Italic = True}
Dim endText As New Text(", exceeding projections by 15%.")
contentParagraph.AddChild(normalText)
contentParagraph.AddChild(emphasizedText)
contentParagraph.AddChild(endText)
doc.AddChild(contentParagraph)
' Save the formatted document
doc.SaveAs("quarterly_report.docx")
此範例說明如何建立具有多種格式設定的文件,讓您匯出的文件更顯 Professional 且視覺上更具吸引力。 TextStyle 類別提供了用於控製字體系列、大小、顏色、粗體、斜體、底線和其他文字屬性的屬性。
程式化 WORD 文件匯出的常見應用情境有哪些?
了解實際應用案例,有助於具體想像 WORD 文件匯出功能如何為您的專案帶來效益。 以下是程式化文件生成發揮重要作用的幾個常見情境:
發票與收據生成:從計費系統自動生成包含標題、表格及付款條款的Professional發票。
報告自動化:自動生成定期財務摘要、績效指標或合規文件。
郵件合併操作:透過將資料庫記錄合併至範本中,建立個人化的合約、信函或證書。
文件生成系統:將原始碼註解或資料庫結構轉譯為格式化的技術文件。
表單處理:將網頁表單或問卷回覆轉換為格式化的 WORD 文件,供利害關係人審閱。
關鍵要點是什麼?
總而言之,IronWord 提供了一套完整的解決方案,可讓開發者透過 C# 將資料匯出至 WORD 文件。 無論您是要生成簡單的報表、複雜的文件,還是動態內容,IronWord 都能簡化流程,讓開發人員能夠透過程式化方式建立高品質的 WORD 文件。 透過運用其功能與特性,您可以簡化文件生成工作流程,並向使用者提供專業的文件。
該函式庫無需依賴 Microsoft Office 安裝,加上其完整的 API 和穩健的效能,使其成為小型應用程式與 Enterprise 級文件處理系統的理想選擇。 隨著您持續探索 IronWord 的功能,您將發現多種方法來優化文件生成流程,並為使用者的文件需求提供更完善的解決方案。
若要了解更多自動產生 Microsoft Word 文件的技巧,請造訪以下連結。
常見問題解答
我如何在 C# 中匯出資料到 Word 文件?
您可以使用 IronWord 在 C# 中匯出資料到 Word 文件,方法是創建 C# 控制台應用程序,通過 NuGet 套件管理器安裝 IronWord,導入必要的庫,並使用 API 來創建和保存包含您數據的 Word 文件。
使用 .NET 庫創建 Word 文檔有哪些優勢?
使用像 IronWord 這樣的 .NET 庫來創建 Word 文件,允許開發人員以程式化的方式自動生成高質量的文件,使工作流程更加高效並可適應特定需求,無需依賴 Microsoft Interop。
我如何在 C# 中格式化文本並向 Word 文檔中添加圖片?
使用 IronWord,您可以通過設置字體樣式、大小和顏色來格式化文本,並且可以通過 API 將圖片插入文檔中。這使在 C# 應用程序中可進行豐富的文檔自定義。
IronWord 可以用來進行動態文檔生成嗎?
是的,IronWord 使得動態文檔生成成為可能,允許您根據來自各種來源如數據庫或用戶輸入的信息創建 Word 文檔,這些文檔可以根據特定用戶需求進行定制。
使用 IronWord 創建 Word 文件涉及哪些步驟?
要使用 IronWord 創建 Word 文件,首先創建一個 C# 控制台應用程序,通過 NuGet 安裝 IronWord,導入庫,創建文本和段落對象,並使用 SaveAs 方法匯出文檔。
IronWord 如何簡化 C# 中的 Word 文檔創建?
IronWord 提供了一個直觀的 API,允許開發人員輕鬆地程式化創建、操作和匯出 Word 文件,從而降低了複雜性並提高了生產力。
是否可以在 C# 中從用戶輸入創建 Word 文檔?
是的,使用 IronWord,您可以從用戶輸入創建 Word 文件。通過捕獲輸入內容,創建文本對象,添加到段落中,然後使用 IronWord API 將其匯出為 .docx 文件。
在 C# 中匯出到 Word 時如何排除常見問題?
當使用 IronWord 匯出到 Word 時出現問題時,確保導入了所有必要的庫,經過 NuGet 安裝的是正確版本的庫,並且您的數據類型與正在使用的 API 方法兼容。
程式化生成 Word 文件有哪些實際應用?
使用 IronWord 程式化生成 Word 文件非常適用於創建自動化報告、文件編寫和數據展示文件,尤為適用於處理大型資料集或需頻繁更新的信息。


