C# 实现 Word 与 TXT 文本格式互转

在现代办公自动化和数据处理流程中,经常需要在不同的文档格式之间进行转换。将 Word 文档 (.doc, .docx) 转换为纯文本 (.txt) 可以方便地提取文字内容用于数据分析、内容索引或简化分享。反之,将 TXT 文件转换为 Word 格式则能更好地利用 Word 强大的排版和格式化功能。

本文将分享如何使用 Spire.Doc for .NET 实现 TXT 文本文件与 Word 文档之间的双向转换,提供完整 C# 示例代码。

Nuget 安装Install-Package Spire.Doc

Word 转 TXT:保留结构与内容

Spire.Doc 提供 SaveToFile() 方法,可直接将加载的 Word 文档转换为纯文本,同时保留段落、换行等结构。

csharp 复制代码
using Spire.Doc;

namespace ConvertWordToText
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 加载Word文件
            Document doc = new Document();
            doc.LoadFromFile("示例.docx");

            // 保存为txt格式
            doc.SaveToFile("Word转Txt.txt", FileFormat.Txt);
            doc.Close();
        }
    }
}

📌 优势

  • 自动识别段落、换行
  • 中文不乱码(UTF-8 编码)
  • 保留原始内容结构,不丢失关键信息
  • 输出为纯文本,可直接用于日志、数据库导入

⚠️ 注意:表格、图片、样式等将被忽略,若需保留,需额外处理。

TXT 转 Word:精准重建文档

加载文本文件可用 LoadText方法,然后再次使用 SaveToFile() 方法将 TXT 内容还原为 Word 文档。

csharp 复制代码
using Spire.Doc;

namespace ConvertTextToWord
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 加载文本文件
            Document doc = new Document();
            doc.LoadText("示例.txt");

            // 保存为Word (.doc 或 .docx)
            doc.SaveToFile("Txt转Word.docx", FileFormat.Docx2016);
            doc.Close();
        }
    }
}

📌 亮点

  • 每个换行自动识别为段落
  • 保留原始文本结构,适合生成报告、通知等
  • 可进一步美化(如设置字体、标题样式)

⚠️ 限制:无法还原原Word中的表格、样式、页眉页脚,属于"文本重建"而非"格式还原"。

结语

在自动化办公中,Word 转 TXTTXT 转 Word 的高效转换是提升效率的关键环节。本文基于 Spire.Doc for .NET 提供了完整、可复用的 C# 实现方案,避免了传统方法 Microsoft.Office.Interop.Word 需依赖 Office 安装、兼容性差等问题。

相关推荐
Rotion_深1 小时前
海康 智能相机二开 绘制底图+测试工具应用框
c#·二次开发·海康·智能相机
王家视频教程图书馆3 小时前
C# asp.net模板代码简单API请求
开发语言·c#·asp.net
大飞pkz4 小时前
【设计模式】备忘录模式
开发语言·设计模式·c#·备忘录模式
李宥小哥10 小时前
C#基础09-面向对象关键字
开发语言·c#
ajassi200010 小时前
开源 C# 快速开发(十四)进程--内存映射
开发语言·开源·c#
ajassi200011 小时前
开源 C# 快速开发(十五)进程--windows消息
windows·开源·c#
ajassi200011 小时前
开源 C# 快速开发(十三)进程--管道通讯
开发语言·开源·c#
Rotion_深17 小时前
C# 对Bitmap 的一些处理方法,裁剪,压缩,旋转等
图像处理·c#
秋月的私语17 小时前
如何快速将当前的c#工程发布成单文件
android·java·c#
切糕师学AI21 小时前
在 C# 中,如何使 $““ 字符串支持换行
c#