使用IRONWORD

如何使用C#读取Word文件

雷根·彭
雷根·彭
2024年八月15日
分享:

在当今时代,Microsoft Word 文档已成为办公、专业和个人交流的代名词。 因此,对于希望在应用程序中自动向用户显示任务的开发人员来说,以编程方式操作 Word 文档至关重要。 虽然有许多可用的库,但并非所有库都像其他库一样强大。 然而,其中一个脱颖而出的竞争者是IronWordIronWord 是一个可靠且强大的 C# Word DOCX 库,易于使用和理解,简化了对 Word 文档的操作。

本文将探讨如何快速利用IronWord通过简短示例读取Word文档。

如何使用 C# 读取 Word 文件;

  1. 在 Visual Studio 中创建控制台应用程序

  2. 安装 IronWord C# DOCX 库

  3. 使用WordDocument类创建一个新的Word文档

  4. 在 Word 文档中添加文本

  5. 使用Paragraph类遍历每个段落

  6. 显示内容

IronWord:C# DOCX 库

IronWord: C# DOCX 库

IronWord 是一个灵活且可扩展的库,具有简单易用的 API,消除了将 Word 文档集成到应用程序中的麻烦。 无论您是想在应用程序中添加和集成简单的文本 word 文档,还是创建复杂的表格和报表以显示给用户,IronWord 都能满足您的一切需求。

以下是其最显著的特点。

  1. 文档操作:IronWord 允许开发人员轻松操作 Word 文档。 无论用户想插入文本段落还是表格和图片等更复杂的结构,IronWord 都能胜任。

  2. 跨平台支持和兼容性:IronWord 旨在灵活支持多个平台的开发者。 它支持各种 .NET Core (8, 7, 6, 5, 和 3.1+)、.NET Standard (2.0+)、.NET Framework (4.6.2+),甚至 Azure。 此外,开发人员可以在不同的平台和系统上使用 IronWord,包括但不限于 Windows、Linux、macOS 和 Android。 它涵盖了最常见的平台,使开发人员能够快速构建跨平台应用程序。

  3. 独立于 Microsoft Office: 在 .Net 应用程序中集成 Word 文档时,一个常见问题是诸如 Interop 等流行库需要安装有许可证的 Microsoft Office。然而,IronWord 通过不受该限制而解决了这一问题。 开发人员可以充分利用 Word 文档的强大功能,而不受 Microsoft Word 许可证和安装的限制。

  4. 格式选项:IronWord提供广泛的格式和样式支持,使开发人员能够使文档独特。 开发人员可以应用字体到他们的文本、颜色、对齐方式和其他复杂格式,例如表格样式

  5. 易用性和广泛支持:除了易于理解的API和简单明了的方法调用外,IronWord还提供扩展API参考和代码示例,帮助开发人员确定最佳使用IronWord的方法。

在 Visual Studio 中创建新的控制台项目

在我们进入示例之前,让我们首先在Visual Studio中创建一个空白控制台项目。

创建新项目时点击控制台应用

然后,我们会为项目提供一个名称和保存位置。

指定项目的名称和位置路径。

接下来,选择要使用的 .NET Framework。 在本例中,我将使用 .NET 8.0。

选择所需的.NET框架并点击创建。

创建并设置好新的控制台项目后,我们来安装我们的 C# word 库,IronWord

安装 IronWord

安装 IronWord 有两种方法。

1.通过 NuGet 软件包管理器安装

要通过 NuGet 包管理器安装它,点击工具,然后选择 `管理 NuGet 解决方案。` 然后,在搜索栏中搜索 IronWord 并安装 `IronWord.`

通过在NuGet包管理器的搜索栏中搜索IronWord,使用解决方案的管理NuGet软件包安装IronWord,然后选择项目并点击安装按钮。

2.通过 NuGet 软件包管理器控制台安装

另一种方法是通过 NuGet 软件包管理器控制台进行安装。 为此,请在控制台中运行以下命令:

Install-Package IronWord
Install-Package IronWord
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronWord
$vbLabelText   $csharpLabel

许可证密钥

请注意,没有授权密钥,IronWord 无法工作; 您可以在免费试用中获得一个。

获得跟踪密钥后,请确保在项目中设置此变量。

//Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
//Replace the license key variable with the trial key you obtained
IronWord.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

用 C# 阅读 Word 文档;

安装必要条件后,我们将在以下代码中演示使用IronWord读取Microsoft Word文档的简单性。

首先,我们导入以下命名空间。 使用 IronWord,我们创建了一个新文档并添加了示例文本。 然后,我们使用`WordDocument`对象访问段落和文本,以打印出Word文档中的文本。

using IronWord;
using IronWord.Models;
using SixLabors.Fonts;

# region
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion
// Create textrun
Text textRunExample = new Text("Sample text");

Paragraph paragraphExample = new Paragraph();
paragraphExample.AddChild(textRunExample);

// Create a new Word document
WordDocument doc = new WordDocument(paragraphExample);

// Export docx
doc.SaveAs("document.docx");

// Access paragraphs and text runs

foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display Contents
        Console.WriteLine(content);
    }
}
using IronWord;
using IronWord.Models;
using SixLabors.Fonts;

# region
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion
// Create textrun
Text textRunExample = new Text("Sample text");

Paragraph paragraphExample = new Paragraph();
paragraphExample.AddChild(textRunExample);

// Create a new Word document
WordDocument doc = new WordDocument(paragraphExample);

// Export docx
doc.SaveAs("document.docx");

// Access paragraphs and text runs

foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display Contents
        Console.WriteLine(content);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

让我们探讨一下从上述代码中读取单词文件的方法和参数。

  1. 我们首先创建一个Text对象,并将字符串“Sample Text”分配给它。

  2. 然后,我们实例化一个Paragraph对象,并将“textRunExample”添加到其中。

  3. 我们还实例化一个WordDocument对象,将其命名为WordDocument doc,并将paragraphExample传递给它,以创建包含该段落的新Word文档。

  4. 代码将 Word 文档保存为文件名 "document.docx",以便日后使用。

  5. 要访问我们刚刚创建的 Word 文档中的段落,我们需要访问 WordDocument 对象的 “Paragraphs” 属性。 段落 "属性是一个列表。因此,我们调用一个 foreach 循环来遍历它。

  6. 要获取段落中的文本,我们访问Paragraphs的"Texts"属性。 这也返回一个Text列表。

  7. 最后,我们将文本分配给名为“content”的字符串变量,并将其打印到控制台。

控制台输出

控制台输出显示从 Word 文档读取的文本。

在 C# 中读取现有的 Word 文档

在上一个示例中,我们以编程方式创建了一个新的 Word 文档并读取了其内容。 我们可以按照类似的步骤,通过修改一些代码来阅读现有的 Word 文档。

输入文件

输入示例:长格式 Word 文档

using IronWord;
using IronWord.Models;
using SixLabors.Fonts;

# region
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion

// Export docx
WordDocument doc = new WordDocument("existing_document.docx");

// Access paragraphs and text runs

foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display Contents
        Console.WriteLine(content);
    }
}
using IronWord;
using IronWord.Models;
using SixLabors.Fonts;

# region
IronWord.License.LicenseKey = "YOUR-KEY-HERE";
#endregion

// Export docx
WordDocument doc = new WordDocument("existing_document.docx");

// Access paragraphs and text runs

foreach (Paragraph paragraph in doc.Paragraphs)
{
    foreach (Text textRun in paragraph.Texts)
    {
        // Access text content
        string content = textRun.Text;
        // Display Contents
        Console.WriteLine(content);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

这两个示例之间的主要区别在于传递给WordDocument对象的参数。 我们不是创建一个新文档,而是将现有的 Word 文件加载到文档中。 其余部分与其他示例相同。

控制台输出

控制台输出

结论

IronWord 许可信息

在所有示例中,我们演示了如何简单地使用IronWord库以编程方式在C#中操作和读取Word文档。 IronWord库的灵活性和可扩展性使其成为一款宝贵的工具,允许开发者在实际生活示例中使用IronWord,例如填充模板、生成报告和批量处理文档。 了解 Word 如何与应用程序集成是非常有价值的,因为这可以为开发人员提供更多解决问题的方案。

此外,开发人员可以在购买之前测试IronWord的广泛功能,因为它提供免费试用许可证。 除易于使用外,IronWord 还附带详细的文档和24/5面向开发人员的支持,缓解了开发人员在生产过程中可能面临的持续挫败感。 我们还提供各种教程和一系列代码示例供参考,以帮助您开始使用IronWord

在使用试用许可证测试IronWord的各个方面后,您可以购买我们的Lite开发者许可证,价格从599美元起,并从Lite升级到Professional。 请参阅我们的许可页面了解更多信息。

雷根·彭
软件工程师
Regan毕业于雷丁大学,拥有电子工程学士学位。在加入Iron Software之前,他的前工作职位要求他专注于单一任务;他在Iron Software最喜欢的是能进行多种工作,无论是增加销售价值、技术支持、产品开发还是营销。他喜欢了解开发人员如何使用Iron Software的库,并利用这些知识不断改进文档和开发产品。
< 前一页
3 个 C# Word 库(为开发人员更新的列表)
下一步 >
如何使用 C# 操作 Word 文件

准备开始了吗? 版本: 2025.4 刚刚发布

查看许可证 >