跳過到頁腳內容
使用 IRONWORD

如何在 C# 中導出文檔至 Word

IronWord讓 C# 開發人員使用簡單的程式碼將資料匯出到 Word 文件。 只需幾行程式碼,即可建立、填入和儲存包含文字、格式和複雜文件結構的 DOCX 檔案。

Microsoft Word 是一款廣泛用於建立和編輯文件的工具,以其多功能性和使用者友善的介面而聞名。 在軟體開發中,經常會遇到需要以程式設計方式產生 Word 文件的情況,無論是用於報告、文件編寫或資料展示。 無論您是建立自動化報告系統、生成發票、建立動態模板,還是從資料庫記錄產生批次文檔,將資料匯出為 Word 格式的功能都可以節省無數的手動工作時間。

在本指南中,我們將探討如何建立新的[C#](https://en.wikipedia.org/wiki/C_Sharp_(programming_language)控制台應用程序,並使用[IronWord](/csharp/word/) (一個用於以程式設計方式操作 Word 文件的有效庫)將資料匯出到 C# 中的 MS Word 文件。 在本教學結束時,您將了解從專案設定到產生第一個包含自訂內容的 Word 文件的完整工作流程。

如何在 C# 中將文件匯出為 Word 文件?

  1. 建立一個新的 C# Visual Studio 專案。
  2. 安裝 C# Word 庫,以便將資料匯出到 Word。
  3. 導入 Word 庫的依賴項。
  4. 使用"new WordDocument(paragraph)"方法建立一個新的 Word 文件。
  5. 使用"SaveAs()"函數儲存新建立的 Word 文件。

如何建立一個新的 C# 控制台應用程式?

若要在 Visual Studio 中建立新的 C# 控制台應用程序,請依照下列步驟操作。 控制台應用程式範本提供了一個簡單的起點,用於學習如何產生 Word 文檔,然後再將該功能整合到更大的應用程式(如 Web 服務或桌面軟體)中。

  1. 開啟 Visual Studio。 在啟動畫面上,選擇"建立新項目"。

Visual Studio 啟動螢幕,突出顯示了

  1. 選擇"控制台應用程式",然後按一下"下一步"。 如果出現多個選項,請選擇 C# 版本。

Visual Studio 中的專案範本選擇窗口,顯示已套用 C# 語言篩選器的控制台應用程式範本選項

  1. 輸入項目名稱和地點。 按一下"下一步",選擇.NET 6.0 或更高版本,然後按一下"建立"。

IronWord是什麼?我為什麼要使用它?

IronWord是一個.NET函式庫,它提供了一個方便的 API,用於在 C# 中處理 Word 文件。 它允許開發人員建立 Word 文檔、修改現有文檔,並將其匯出到他們的 C# 應用程式中。 使用IronWord,您可以根據來自各種來源(例如資料庫、API 或使用者輸入)的資料動態產生 Word 文件。 該程式庫處理所有複雜的底層 Office Open XML 規範,可讓您專注於業務邏輯,而不是文件格式的複雜性。

IronWord為 Word 文件處理提供了許多優勢。 與某些需要在伺服器或開發機器上安裝 Microsoft Office 的替代方案不同, IronWord可以獨立運行,因此非常適合雲端部署、容器化應用程式以及無法安裝 Office 的環境。 此庫支援多種文件元素,包括段落、表格、圖像、頁首、頁尾、樣式和格式選項,讓您可以完全控製文件的外觀和結構。

如何在我的專案中安裝IronWord ?

您可以使用NuGet套件管理器依照下列步驟輕鬆安裝IronWord 。 NuGet是.NET的標準套件管理系統,使程式庫的安裝和版本管理變得簡單可靠。

  1. 在 Visual Studio 中,開啟NuGet套件管理器窗口,然後前往"瀏覽"標籤。
  2. 在"瀏覽"標籤中,在搜尋欄中輸入IronWord ,然後按 Enter 鍵。
  3. 將顯示包裹清單。 選擇最新軟體包,然後按一下"安裝"。

 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");
$vbLabelText   $csharpLabel

在這個例子中,我們將建立一個簡單的 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 文件是什麼樣子的?

Microsoft Word 文件窗口,顯示產生的 DOCX 文件,匯出的文字內容顯示在文件正文中

如何在 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");
$vbLabelText   $csharpLabel

本範例示範如何建立具有不同格式的文檔,使匯出的文檔更專業、更具視覺吸引力。 TextStyle 類別提供了用於控製字體系列、大小、顏色、粗體、斜體、底線和其他文字屬性的屬性。

程式化匯出 Word 文件的常見用例有哪些?

了解實際應用程式有助於直觀地了解 Word 文件匯出功能如何為您的專案帶來好處。 以下幾個常見場景中,程式化文件產生功能都發揮了至關重要的作用:

發票和收據產生:從計費系統中自動建立包含抬頭、表格和付款條款的專業發票。

報告自動化:自動產生定期財務摘要、績效指標或合規性文件。

郵件合併操作:透過將資料庫記錄合併到範本中來建立個人化的合約、信件或證書。

文檔系統:將原始碼註解或資料庫模式轉換為格式化的技術文件。

表單處理:將網頁表單或調查回應轉換為格式化的 Word 文檔,供利害關係人審查。

有哪些關鍵要點?

總而言之, IronWord提供了一個完整的解決方案,用於使用 C# 將資料匯出到 Word 文件。 無論您是產生簡單的報表、複雜的文件或動態內容, IronWord都能簡化流程,讓開發人員能夠以程式設計方式建立高品質的 Word 文件。 利用其特性和功能,您可以簡化文件產生工作流程,並向使用者提供專業文件。

該程式庫無需安裝 Microsoft Office,並且具有完整的 API 和可靠的效能,使其成為小型應用程式和企業級文件處理系統的理想選擇。 隨著您不斷探索 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 文件非常適用於創建自動化報告、文件編寫和數據展示文件,尤為適用於處理大型資料集或需頻繁更新的信息。

Jordi Bardia
軟體工程師
Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担產品测测试,產品開發和研究的责任時,Jordi 為持续的產品改進增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me