使用 C# 与 VB.NET 将 Word 和 Excel 转换为纯文本 (.txt)
Word 与 Excel 文件通常包含大量格式信息,导致体积较大且跨平台兼容性受限。若只需保留核心内容,将其转换为纯文本(.txt)是简化数据、提升兼容性的有效手段。本文将演示如何使用 C# 和 VB.NET 调用 Spire.Office 组件,快速实现这两种格式文件的文本化转换。
准备开发环境与依赖
在开始编码前,需要确保项目中已安装支持 Office 文档处理的第三方组件。本文以 Spire.Office for .NET 为例,该库可通过 NuGet 包管理器获取。打开 工具 → NuGet 包管理器 → 程序包管理器控制台,执行以下命令:
Install-Package Spire.Office
C# / VB.NET 将 Word 转为 Text
Spire.Office 提供了 Document 类来操作 Word 文档。利用其内置的 SaveToTxt 方法,可以将整个文档或其指定部分直接保存为纯文本。
第1步:加载源 Word 文档
创建 Document 类的实例,并使用 LoadFromFile 方法读取本地的 .docx 文件。
第2步:执行转换并保存
调用 SaveToTxt 方法,指定输出文件名及编码格式(如 UTF-8)。该方法会自动剥离排版格式,仅保留可见文本内容。
C# 代码示例:
using Spire.Doc;
using System.Text;
namespace ConvertWordToText
{
class Program
{
static void Main(string[] args)
{
// 1. 创建 Document 实例
Document document = new Document();
// 2. 加载原始 Word 文档
document.LoadFromFile("新型冠状病毒肺炎.docx");
// 3. 将内容保存为 UTF-8 编码的 Text 文件
document.SaveToTxt("新型冠状病毒肺炎.txt", Encoding.UTF8);
}
}
}
VB.NET 代码示例:
Imports Spire.Doc
Imports System.Text
Namespace ConvertWordToText
Friend Class Program
Private Shared Sub Main(ByVal args As String())
' 1. 创建 Document 实例
Dim document As Document = New Document()
' 2. 加载原始 Word 文档
document.LoadFromFile("新型冠状病毒肺炎.docx")
' 3. 将内容保存为 UTF-8 编码的 Text 文件
document.SaveToTxt("新型冠状病毒肺炎.txt", Encoding.UTF8)
End Sub
End Class
End Namespace
下图展示了转换前后的效果对比:
C# / VB.NET 将 Excel 转为 Text
Excel 文件由多个工作表组成,因此处理逻辑略有不同。需要使用 Workbook 类加载文件,并通过 Worksheets 集合定位具体的工作表,再调用对应的工作表方法进行保存。
第1步:加载源 Excel 文档
初始化 Workbook 实例,并使用 LoadFromFile 读取 .xlsx 文件。
第2步:定位目标工作表
通过索引(如 Worksheets[0])获取要转换的具体 Sheet。如需转换所有表,可遍历整个集合。
第3步:导出为带分隔符的 Text 文件
使用 Worksheet.SaveToFile 方法。该方法允许指定列之间的分隔符(如空格 " " 或制表符 \t),便于后续按列解析数据。
C# 代码示例:
using Spire.Xls;
using System.Text;
namespace ConvertExcelToText
{
class Program
{
static void Main(string[] args)
{
// 1. 创建 Workbook 实例
Workbook workbook = new Workbook();
// 2. 加载原始 Excel 文档
workbook.LoadFromFile("GDP排名.xlsx");
// 3. 获取第一个工作表 (Index 0)
Worksheet worksheet = workbook.Worksheets[0];
// 4. 将工作表保存为以空格分隔的 Text 文件
// SaveToFile(文件名, 列分隔符, 编码)
worksheet.SaveToFile("GDP排名.txt", " ", Encoding.UTF8);
}
}
}
VB.NET 代码示例:
Imports Spire.Xls
Imports System.Text
Namespace ConvertExcelToText
Friend Class Program
Private Shared Sub Main(ByVal args As String())
' 1. 创建 Workbook 实例
Dim workbook As Workbook = New Workbook()
' 2. 加载原始 Excel 文档
workbook.LoadFromFile("GDP排名.xlsx")
' 3. 获取第一个工作表 (Index 0)
Dim worksheet As Worksheet = workbook.Worksheets(0)
' 4. 将工作表保存为以空格分隔的 Text 文件
worksheet.SaveToFile("GDP排名.txt", " ", Encoding.UTF8)
End Sub
End Class
End Namespace
原 Excel 表格结构与转换后的 Text 文本对比如图所示:
以上就是使用 C# 和 VB.NET 将 Word 与 Excel 文档转化为纯文本的详细内容,更多关于 C# 文档处理技巧的资料请关注本站其它相关文章!
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









