如何在 C# 中将文本转换为 Word 以及将 Word 转换为文本

在现代软件开发中,处理文档内容是一个非常常见的需求。无论是生成报告、存储日志,还是处理用户输入,开发者都可能需要在纯文本与 Word 文档之间进行转换

  • 有时需要将文本转换为 Word ,以便生成结构化的 .docx 文件,使内容更易于阅读、打印或分享。
  • 有时需要将 Word 文档转换为文本,以便进行内容分析、搜索索引或数据处理。

通过掌握这两种转换方法,开发者可以更高效地处理各种文档场景,提高应用程序的灵活性。

本文将介绍如何使用 Free Spire.Doc for .NET 在 C# 中完成以下操作:

  • 将文本字符串转换为 Word 文档
  • 将文本文件转换为 Word 文档
  • 将 Word 文档转换为文本文件

前提条件

  • 开发环境:Visual Studio 或任意 C# IDE
  • :Free Spire.Doc for .NET

可以通过 NuGet 安装 Free Spire.Doc:

cs 复制代码
Install-Package FreeSpire.Doc

提示:Free Spire.Doc 适合基本文档处理需求(每个文档不超过500个段落和25个表格),如果需要处理更大的文档,可选择商业版本。


在 C# 中将文本转换为 Word

处理纯文本时,通常有两种情况:

  1. 文本已经在内存中,例如来自用户输入或程序生成的字符串。
  2. 文本存储在 .txt 文件中,需要将其转换为 Word 文档。

将文本字符串转换为 Word

cs 复制代码
using Spire.Doc;
using Spire.Doc.Documents;

class Program
{
    static void Main()
    {
        Document document = new Document();
        Section section = document.AddSection();

        Paragraph paragraph = section.AddParagraph();
        paragraph.AppendText("这是一个将文本字符串转换为 Word 的示例。");

        document.SaveToFile("TextStringToWord.docx", FileFormat.Docx);
    }
}

说明

  • Document 用于创建 Word 文档对象。
  • SectionParagraph 是 Word 文档结构的基本单元,可以根据需要添加多段文本或设置段落格式。
  • 输出文件 TextStringToWord.docx 将包含插入的文本内容。

扩展技巧 :如果需要对文本应用不同字体、颜色或样式,可以使用 TextRange 对象进一步设置。


将文本文件转换为 Word

cs 复制代码
using Spire.Doc;

namespace ConvertTextToWord
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 创建Document类的对象
            Document doc = new Document();

            // 加载文本文件
            doc.LoadText("示例.txt");

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

说明

  • LoadText 用于加载文本文件。
  • SaveToFile 将文本文件保存为Word文件,可选Doc, Docx等多种格式。

在 C# 中将 Word 转换为文本

有时我们需要从 Word 文档中提取内容用于分析或存储。这种情况下,可以将 Word 文档导出为纯文本文件:

cs 复制代码
using Spire.Doc;

class Program
{
    static void Main()
    {
        Document document = new Document();
        document.LoadFromFile("Sample.docx");

        // 保存为纯文本文件
        document.SaveToFile("WordToText.txt", FileFormat.Txt);
    }
}

说明

  • 此操作会去除 Word 文档的格式,只保留文本内容。
  • 导出的文本可用于全文搜索、日志分析或进一步处理。
  • 如果需要保留某些简单格式(如换行或段落分隔),可在保存前手动遍历段落进行处理。

总结与建议

通过掌握文本与 Word 之间的双向转换,开发者可以:

  • 提高文档处理效率:将生成的文本内容快速转换为可打印或可分享的 Word 文档。
  • 便于数据分析:从 Word 文档中提取文本,用于搜索、索引或统计。
  • 保持格式灵活性:根据需要对段落、字体或样式进行自定义。

掌握这些方法后,C# 应用就可以更灵活地处理不同来源和类型的文档内容。

相关推荐
会飞的小蛮猪5 小时前
Jenkins运维之路(权限分配&忘记admin密码)
java·运维·经验分享·jenkins·prometheus
源代码•宸5 小时前
Leetcode—2749. 得到整数零需要执行的最少操作数【中等】(__builtin_popcountl)
c++·经验分享·算法·leetcode·位运算
汇能感知7 小时前
光谱相机的探测器类型
经验分享·笔记·科技
艾莉丝努力练剑10 小时前
GCC编译器深度解剖:从源码到可执行文件的全面探索
c++·ide·经验分享·gcc
姚瑞南10 小时前
【AI产品思路】AI 原型设计工具横评:产品经理视角下的 v0、Bolt 与 Lovable
人工智能·经验分享·笔记·aigc·产品经理
你好~每一天10 小时前
2025年B端产品经理进阶指南:掌握这些计算机专业技能,决胜职场!
java·人工智能·经验分享·学习·产品经理·大学生
源代码•宸10 小时前
Leetcode—721. 账户合并【中等】
c++·经验分享·算法·leetcode·并查集
RPAdaren11 小时前
别再看人形机器人了!真正干活的机器人还有这些!
经验分享
智者知已应修善业14 小时前
【51单片机8*8点阵显示箭头动画详细注释】2022-12-1
c语言·经验分享·笔记·嵌入式硬件·51单片机