从 Word 文档中提取文本
Word 文本可以从文档中提取并保存在其他文件(例如 TXT 文件)中以供其他用途。本指南将提供一种在 C# 和 VB.NET 中提取 Word 文本的便捷解决方案。
一般来说,一个Word文档必须包含很多内容,比如文本、图片、表格等,其中一些内容可以提取出来用于其他文档或文件中。以下指南重点介绍如何通过 Spire.Doc for .NET 从 Word 文档中提取文本并保存在 C# 和 VB.NET 中的 TXT 文件中。以下屏幕截图显示了从 Word 中提取的部分文本。
文本全部保存在 .NET 提供的 Section 类 Spire.Doc 的 Paragraph 中。因此,您必须先获取文档的部分和段落,然后再获取要提取的文本。以下步骤介绍了有关如何提取文本的详细信息。
首先,使用参数字符串fileName调用Document类的LoadFromFile方法来加载文档。其次,初始化一个 StringBuilder 类实例来保存接下来要提取的文本。第三,使用 foreach 语句获取文档中每个部分的每个段落,并调用StringBuilder 类的AppendLine(Paragraph.Text)方法将所有提取的字符串(所有段落中的文本)的副本附加到 StringBuilder 实例中。最后,使用参数字符串路径、字符串内容调用 File.WriteAllText 方法来创建一个新文件以保存提取的文本。请使用代码。
[C#]
using Spire.Doc; using Spire.Doc.Documents; using System.Text; using System.IO; namespace ExtractTextfromWord { class ExtractText { static void Main(string[] args) { //Load Document Document document = new Document(); document.LoadFromFile(@"E:\Work\Documents\WordDocuments\Spire.Doc for .NET.docx"); //Initialzie StringBuilder Instance StringBuilder sb = new StringBuilder(); //Extract Text from Word and Save to StringBuilder Instance foreach (Section section in document.Sections) { foreach (Paragraph paragraph in section.Paragraphs) { sb.AppendLine(paragraph.Text); } } //Create a New TXT File to Save Extracted Text File.WriteAllText("Extract.txt", sb.ToString()); System.Diagnostics.Process.Start("ExtractText.txt"); } } }
[VB]
Imports Spire.Doc Imports Spire.Doc.Documents Imports System.Text Imports System.IO Namespace ExtractTextfromWord Friend Class ExtractText Shared Sub Main(ByVal args() As String) 'Load Document Dim document As New Document() document.LoadFromFile("E:\Work\Documents\WordDocuments\Spire.Doc for .NET.docx") 'Initialzie StringBuilder Instance Dim sb As New StringBuilder() 'Extract Text from Word and Save to StringBuilder Instance For Each section As Section In document.Sections For Each paragraph As Paragraph In section.Paragraphs sb.AppendLine(paragraph.Text) Next paragraph Next section 'Create a New TXT File to Save Extracted Text File.WriteAllText("Extract.txt", sb.ToString()) System.Diagnostics.Process.Start("ExtractText.txt") End Sub End Class End Namespace
Spire.Doc 是无需自动化即可操作 MS Word 文档的专业独立组件,使开发人员能够在其 .NET、WPF 和 Silverlight 应用程序上生成、读取、写入、修改 Word 文档。