在这个简短的教程中,我们将借助有关环境配置的详细信息、步骤列表和可运行代码来学习如何在 C# 中阅读 Word 文档。该代码将演示以不同方式读取 Word 文件。您将了解 **C# 如何通过加载 DOCX、DOC、RTF 或 HTML 等 Word 文件,然后访问其不同元素以进行处理或查看,从而了解 C# 读取 Word 文档。
在 C# 中从 Word 文档中读取数据的步骤
- 将项目环境配置为使用 NuGet 包管理器中的 Aspose.Words
- 将输入 DOCX 文件加载到 Document 类对象中
- 从文档中获取所有类型为 Paragraph 的节点
- 将每个段落转换为字符串并显示在控制台上
- 从文档中获取所有的 Run 类型节点
- 将每个 Run 项目转换为字符串并与字体名称和大小一起显示
这些步骤提供了在编写 Word 文件阅读器程序时配置环境和要执行的任务所需的详细信息。它展示了 C# 如何通过将源文件加载到 Document 类实例中然后访问其所有段落以显示文本来读取 DOCX 文件。它还描述了从段落、表格等中读取数据,以便将具有不同样式的每个文本段分开或单独访问每个表格单元格值进行处理。
在 C# 中读取 Word 文件的代码
using System; | |
using Aspose.Words; | |
namespace ReadWordDocumentInCSharp | |
{ | |
class Program | |
{ | |
static void Main(string[] args) // Main function to read Word document in C# | |
{ | |
// Create and load license to read DOCX without trial limits | |
License licRotateImage = new License(); | |
licRotateImage.SetLicense("Aspose.Word.lic"); | |
// Load the source Word file to be read | |
Document doc = new Document("input.docx"); | |
// Read all the paragraph in the document and display its contents | |
foreach (Paragraph para in doc.GetChildNodes(NodeType.Paragraph, true)) | |
Console.WriteLine(para.ToString(SaveFormat.Text)); | |
// Read all the Runs in the document and display style and text | |
foreach (Run run in doc.GetChildNodes(NodeType.Run, true)) | |
{ | |
Font font = run.Font; | |
Console.WriteLine(font.Name + "," + font.Size.ToString()); | |
Console.WriteLine(run.Text); | |
} | |
System.Console.WriteLine("Done"); | |
} | |
} | |
} |
此代码演示*如何使用 Document.GetChildNodes() 函数在 C# 中读取 Word 文件,该函数需要获取一种类型的节点,例如 Paragraph、Run、Section、Body、HeaderFooter、Comment 等。一旦访问子节点,您必须将其转换为相应的类型才能使用其方法和属性。例如,我们已经阅读了两次文档,第一次显示整个文档中的所有文本,而不考虑普通段落或表格等,第二次根据样式和内容类型的任何变化进行阅读。
本文教我们阅读 Word 文件,但是如果您想学习将 Word 文档转换为 HTML,请参阅 如何使用 C# 将 Word 文档转换为 HTML 上的文章。