使用 IRONWORD C# 编辑 Word(代码示例开发者教程) Jordi Bardia 已更新:七月 28, 2025 下载 IronWord NuGet 下载 免费试用 法学硕士副本 法学硕士副本 将页面复制为 Markdown 格式,用于 LLMs 在 ChatGPT 中打开 向 ChatGPT 咨询此页面 在双子座打开 向 Gemini 询问此页面 在双子座打开 向 Gemini 询问此页面 打开困惑 向 Perplexity 询问有关此页面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 复制链接 电子邮件文章 创建、编辑和管理Word 文档是许多应用程序的常见需求。 虽然在 C# 中有多种方法可以创建和编辑 Word 文档,但最强大的方法之一是使用 Microsoft Interop 服务。 借助此工具,您可以非常轻松地以编程方式处理 Word 文档。 编辑 Word 和 DOCX 文档 下载 C# 库以编辑 Word 和 DOCX 文档 在代码中创建一个空的 Word 文档 向 Word 文档中添加新文本 编辑新文档或现有文档中的文本 将 DOCX 文件导出到所需位置 前提条件 在搭建环境和开始编写代码之前,请确保满足以下先决条件: Visual Studio :请确保您的计算机上已安装Visual Studio 。如果没有,请从微软官方网站下载并安装。 Microsoft Word :由于我们使用 Microsoft Interop,因此您的计算机上应该安装MS Word 。 Interop 服务与您计算机上安装的 Microsoft Word 应用程序进行交互。 C# 基础知识:理解 C# 的基本概念至关重要。 .NET Framework :确保您的 Visual Studio 支持 .NET Framework,因为我们的应用程序将基于它。 环境设置 首先打开 Visual Studio 应用程序。 打开后,您将看到欢迎屏幕。 1. 创建一个新的 .NET Framework 控制台应用程序 点击"创建新项目"。 在搜索框中输入"控制台应用程序(.NET Framework)"。 从结果中,选择"控制台应用程序 (.NET Framework)",然后单击"下一步"按钮。 为您的项目命名,然后单击"创建"按钮。 完成这些步骤后,Visual Studio 将为您生成一个新的 .NET Framework 控制台应用程序。 在Program.cs文件中,你会找到一个带有Main方法的基本模板,它是控制台应用程序的入口点。 2. 使用 NuGet 包管理器安装Microsoft.Office.Interop.Word NuGet 是 .NET 的包管理器,它集成在 Visual Studio 中。 以下是如何使用它来安装Microsoft.Office.Interop.Word程序包: 在 Visual Studio 中,转到"工具"菜单。 选择"NuGet 程序包管理器",然后选择"管理解决方案的 NuGet 程序包..."。 在 NuGet 窗口中,单击"浏览"选项卡。 在搜索框中,键入Microsoft.Office.Interop.Word ,然后按 Enter 键。 从搜索结果中,选择Microsoft.Office.Interop.Word程序包。 在右侧,确保选中您的控制台应用程序项目,然后单击"安装"按钮。 ! C# 编辑 Word(代码示例开发者教程)图 1 Visual Studio 现在将安装该程序包,并在您的项目中添加对该程序包的引用。 此软件包包含从 C# 应用程序与MS Word交互所需的程序集和工具。 隆重推出 IronWord:比 Interop 更优越的替代方案 虽然 Interop 为使用 Word 和 Excel 提供了强大的功能,但它也有局限性。 IronWord 是一款功能全面的库,专为 .NET 开发人员优化。 IronWord 比 Interop 提供更流畅的使用体验,尤其是在编辑 Word 文档方面。 它不仅保证了兼容性和性能,而且还通过直观的方法简化了复杂的任务。 为了便于比较,我将在MS Word之后提供每个用例的 IronWord 代码片段,使用 IronWord 版本2024.1.2 。 打开现有 Word 文档 很多时候,您可能需要编辑现有的 Word 文档,以下示例展示了如何在 C# 中执行此操作: // Create an instance of the Word Application var WordApp = new Microsoft.Office.Interop.Word.Application(); // Open a Word document with the specified file path var WordDoc = WordApp.Documents.Open(@"path_to_your_document.docx"); // Create an instance of the Word Application var WordApp = new Microsoft.Office.Interop.Word.Application(); // Open a Word document with the specified file path var WordDoc = WordApp.Documents.Open(@"path_to_your_document.docx"); ' Create an instance of the Word Application Dim WordApp = New Microsoft.Office.Interop.Word.Application() ' Open a Word document with the specified file path Dim WordDoc = WordApp.Documents.Open("path_to_your_document.docx") $vbLabelText $csharpLabel 在上面的代码中,将path_to_your_document.docx替换为您的docx 文件的路径。 使用 IronWord 使用 IronWord 打开 Word 文档。 // Open a Word document with the specified file path using IronWord WordDocument doc = new WordDocument(@"path_to_your_document.docx"); // Open a Word document with the specified file path using IronWord WordDocument doc = new WordDocument(@"path_to_your_document.docx"); ' Open a Word document with the specified file path using IronWord Dim doc As New WordDocument("path_to_your_document.docx") $vbLabelText $csharpLabel 创建新的 Word 文档 从头开始创建 Word 文档: // Initialize a new instance of the Word Application var WordApp = new Microsoft.Office.Interop.Word.Application(); // Add a new Word document var WordDoc = WordApp.Documents.Add(); // Initialize a new instance of the Word Application var WordApp = new Microsoft.Office.Interop.Word.Application(); // Add a new Word document var WordDoc = WordApp.Documents.Add(); ' Initialize a new instance of the Word Application Dim WordApp = New Microsoft.Office.Interop.Word.Application() ' Add a new Word document Dim WordDoc = WordApp.Documents.Add() $vbLabelText $csharpLabel 这段代码片段会创建一个新的 Word 文档,您可以使用 C# 对其进行编写和编辑。 使用 IronWord // Create a new, empty Word document using IronWord WordDocument doc = new WordDocument(); // Create a new, empty Word document using IronWord WordDocument doc = new WordDocument(); ' Create a new, empty Word document using IronWord Dim doc As New WordDocument() $vbLabelText $csharpLabel 向 Word 文档添加文本 要添加新的文本段落: // Add a new paragraph to the document WordDoc.Paragraphs.Add(); // Assign text to the newly added paragraph WordDoc.Paragraphs[1].Range.Text = "This is the first paragraph."; // Add a new paragraph to the document WordDoc.Paragraphs.Add(); // Assign text to the newly added paragraph WordDoc.Paragraphs[1].Range.Text = "This is the first paragraph."; ' Add a new paragraph to the document WordDoc.Paragraphs.Add() ' Assign text to the newly added paragraph WordDoc.Paragraphs(1).Range.Text = "This is the first paragraph." $vbLabelText $csharpLabel Paragraphs.Add()方法向 Word 文档中添加一个新段落, Range.Text属性为其分配新文本。 使用 IronWord // Add a new text to the document using IronWord doc.AddText("Add text using IronWord"); // Add a new text to the document using IronWord doc.AddText("Add text using IronWord"); ' Add a new text to the document using IronWord doc.AddText("Add text using IronWord") $vbLabelText $csharpLabel 编辑现有文本 在本教程中,我们来修改第一段: // Edit the text of the first paragraph WordDoc.Paragraphs[1].Range.Text = "This is the edited first paragraph."; // Edit the text of the first paragraph WordDoc.Paragraphs[1].Range.Text = "This is the edited first paragraph."; ' Edit the text of the first paragraph WordDoc.Paragraphs(1).Range.Text = "This is the edited first paragraph." $vbLabelText $csharpLabel 您还可以使用类似的方法在 Word 文档中添加和编辑其他元素。 使用 IronWord // Edit the text of the first paragraph using IronWord doc.Paragraphs[0].TextRuns[0].Text = "This is the edited first paragraph."; // Edit the text of the first paragraph using IronWord doc.Paragraphs[0].TextRuns[0].Text = "This is the edited first paragraph."; ' Edit the text of the first paragraph using IronWord doc.Paragraphs(0).TextRuns(0).Text = "This is the edited first paragraph." $vbLabelText $csharpLabel 保存并关闭文档 完成所需的修改后: // Save the document to a specified path WordDoc.SaveAs(@"path_where_you_want_to_save.docx"); // Close the document and quit the application WordDoc.Close(); WordApp.Quit(); // Save the document to a specified path WordDoc.SaveAs(@"path_where_you_want_to_save.docx"); // Close the document and quit the application WordDoc.Close(); WordApp.Quit(); ' Save the document to a specified path WordDoc.SaveAs("path_where_you_want_to_save.docx") ' Close the document and quit the application WordDoc.Close() WordApp.Quit() $vbLabelText $csharpLabel 将path_where_you_want_to_save.docx替换为您所需的保存路径。 使用 IronWord // Save the document to the desired path using IronWord doc.SaveAs(@"path_where_you_want_to_save.docx"); // Save the document to the desired path using IronWord doc.SaveAs(@"path_where_you_want_to_save.docx"); ' Save the document to the desired path using IronWord doc.SaveAs("path_where_you_want_to_save.docx") $vbLabelText $csharpLabel 完整代码和示例 让我们把所有内容整合起来。 以下是一个完整的代码示例,演示如何打开现有的 Word 文档、对其进行编辑,然后保存更改: var WordApp = new Microsoft.Office.Interop.Word.Application(); // Create a new Word document var WordDoc = WordApp.Documents.Add(); // Add new text WordDoc.Paragraphs.Add(); WordDoc.Paragraphs[1].Range.Text = "This is the first paragraph."; // Edit the first paragraph WordDoc.Paragraphs[1].Range.Text = "This is the edited first paragraph."; // Save and close WordDoc.SaveAs(@"path_where_you_want_to_save.docx"); WordDoc.Close(); WordApp.Quit(); var WordApp = new Microsoft.Office.Interop.Word.Application(); // Create a new Word document var WordDoc = WordApp.Documents.Add(); // Add new text WordDoc.Paragraphs.Add(); WordDoc.Paragraphs[1].Range.Text = "This is the first paragraph."; // Edit the first paragraph WordDoc.Paragraphs[1].Range.Text = "This is the edited first paragraph."; // Save and close WordDoc.SaveAs(@"path_where_you_want_to_save.docx"); WordDoc.Close(); WordApp.Quit(); Dim WordApp = New Microsoft.Office.Interop.Word.Application() ' Create a new Word document Dim WordDoc = WordApp.Documents.Add() ' Add new text WordDoc.Paragraphs.Add() WordDoc.Paragraphs(1).Range.Text = "This is the first paragraph." ' Edit the first paragraph WordDoc.Paragraphs(1).Range.Text = "This is the edited first paragraph." ' Save and close WordDoc.SaveAs("path_where_you_want_to_save.docx") WordDoc.Close() WordApp.Quit() $vbLabelText $csharpLabel 使用 IronWord 使用 IronWord 的完整代码示例非常简洁。IronWord 利用简洁的代码片段来编辑 DOCX 文件。 // Create an empty Word document WordDocument doc = new WordDocument(); // Add new text doc.AddText("This is the first paragraph."); // Edit the text doc.Paragraphs[0].TextRuns[0].Text = "This is the edited first paragraph."; // Export DOCX doc.SaveAs(@"path_where_you_want_to_save.docx"); // Create an empty Word document WordDocument doc = new WordDocument(); // Add new text doc.AddText("This is the first paragraph."); // Edit the text doc.Paragraphs[0].TextRuns[0].Text = "This is the edited first paragraph."; // Export DOCX doc.SaveAs(@"path_where_you_want_to_save.docx"); ' Create an empty Word document Dim doc As New WordDocument() ' Add new text doc.AddText("This is the first paragraph.") ' Edit the text doc.Paragraphs(0).TextRuns(0).Text = "This is the edited first paragraph." ' Export DOCX doc.SaveAs("path_where_you_want_to_save.docx") $vbLabelText $csharpLabel 结论 在 .NET 应用程序中操作 Word 和 Excel 文档方面,选择非常多。 虽然微软的 Interop 服务一直是许多人的首选,但 IronWord 等解决方案的出现标志着人们正在转向更高效、更人性化的工具。 常见问题解答 我如何在 C# 中创建和编辑 Word 文档? 您可以使用 Microsoft Interop 服务或 IronWord 库在 C# 中创建和编辑 Word 文档。两者都允许您以编程方式操作 Word 文档,IronWord 提供了增强的性能和易用性。 使用 IronWord 相对于 Microsoft Interop 操作 Word 文档的好处是什么? IronWord 提供比 Microsoft Interop 更流畅的体验,通过提供更好的性能和更直观的方法来编辑 Word 文档。它为 .NET 应用程序优化,是开发人员的现代高效选择。 我如何使用 C# 打开现有的 Word 文档? 要在 C# 中打开现有的 Word 文档,您可以使用像 Microsoft Interop 服务或 IronWord 这样的库。它们提供以编程方式加载和操作 Word 文件内容的方法。 设置 .NET Framework 控制台应用程序以进行 Word 文档编辑需要哪些步骤? 首先,确保已安装 Visual Studio 和 .NET Framework。在 Visual Studio 中创建新的 .NET Framework 控制台应用程序,并使用 NuGet Package Manager 安装 Microsoft.Office.Interop.Word 包或 IronWord 库。 我如何使用 C# 向 Word 文档添加文本? 您可以使用 Microsoft Interop 或 IronWord 等库向 Word 文档添加文本。这些库提供以编程方式插入和修改文档内文本的方法。 在 C# 中如何保存和关闭 Word 文档? 在 C# 中,您可以使用 Microsoft Interop 或 IronWord 等库提供的方法来保存和关闭 Word 文档。这些方法确保更改被保存并文件正确关闭。 在 Visual Studio 中安装 Microsoft.Office.Interop.Word 包的过程是什么? 要在 Visual Studio 中安装 Microsoft.Office.Interop.Word 包,通过 '工具' 菜单访问 NuGet Package Manager,选择 '为解决方案管理 NuGet 包...',搜索 'Microsoft.Office.Interop.Word' 并安装包。 如何在 C# 中编辑 Word 文档时解决常见错误? 在 C# 中编辑 Word 文档时的常见错误常常可以通过检查库是否正确安装、确保与 .NET Framework 的兼容性以及验证文档路径和权限是否正确来解决。 我如何在 C# 中创建新的 Word 文档? 您可以使用 Microsoft Interop 或 IronWord 等库在 C# 中创建新的 Word 文档。这些库提供初始化新 Word 文档并根据需要添加内容的方法。 是否有使用 IronWord 编辑 Word 文档的完整代码示例? 是的,教程提供了使用 IronWord 编辑 Word 文档的完整代码示例。它包括创建 Word 应用程序实例,添加和编辑文本以及保存文档,展示了 IronWord 方法的实际应用。 Jordi Bardia 立即与工程团队聊天 软件工程师 Jordi 最擅长 Python、C# 和 C++,当他不在 Iron Software 利用这些技能时,他就在游戏编程。分享产品测试、产品开发和研究的责任,Jordi 在持续的产品改进中增加了巨大的价值。多样的经验使他面临挑战并保持投入,他表示这是在 Iron Software 工作的最喜欢的方面之一。Jordi 在佛罗里达州迈阿密长大,并在佛罗里达大学学习计算机科学和统计学。 相关文章 已更新九月 18, 2025 ASP .NET Core 导入和导出 Word 文件 本指南探讨了如何使用 IronWord 库导入现有的 Word 文档、显示其内容并从头创建文档 阅读更多 已更新七月 28, 2025 VS 2022 编程创建新 Word 文档 (教程) 在今天的教程中,我将简要解释如何使用 IronWord 编程创建 Microsoft Word 文档并提供简短示例。 阅读更多 已更新六月 22, 2025 如何使用 C# 在 Word 中对齐文本 深入了解 IronWord NuGet 包以及使用该包对齐文本或段落的方法 阅读更多 如何在 C# 中创建 Word 文档如何在 C# 中将 Word 转换为 PDF
已更新七月 28, 2025 VS 2022 编程创建新 Word 文档 (教程) 在今天的教程中,我将简要解释如何使用 IronWord 编程创建 Microsoft Word 文档并提供简短示例。 阅读更多