如何在 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# 应用就可以更灵活地处理不同来源和类型的文档内容。

相关推荐
_Minato_14 分钟前
计算机系统知识总结——指令系统
经验分享·软考·计算机系统
AI科技星19 分钟前
为什么变化的电磁场才产生引力场?—— 统一场论揭示的时空动力学本质
数据结构·人工智能·经验分享·算法·计算机视觉
asdzx672 小时前
如何使用 C# 将 RTF 转换为 PDF
经验分享
低调电报2 小时前
在WPS可以显示图片,word中不能显示的原因及解决
经验分享·word·wps
孤廖4 小时前
终极薅羊毛指南:CLI工具免费调用MiniMax-M2/GLM-4.6/Kimi-K2-Thinking全流程
人工智能·经验分享·chatgpt·ai作画·云计算·无人机·文心一言
Croa-vo5 小时前
TikTok 数据工程师三轮 VO 超详细面经:技术深挖 + 建模推导 + 压力测试全记录
javascript·数据结构·经验分享·算法·面试
草莓熊Lotso7 小时前
《算法闯关指南:动态规划算法--斐波拉契数列模型》--01.第N个泰波拉契数,02.三步问题
开发语言·c++·经验分享·笔记·其他·算法·动态规划
老朱佩琪!9 小时前
投递简历经验分享
经验分享
智者知已应修善业17 小时前
【51单片机普通延时奇偶灯切换】2023-4-4
c语言·经验分享·笔记·嵌入式硬件·51单片机
海边夕阳200620 小时前
【每天一个AI小知识】:什么是循环神经网络?
人工智能·经验分享·rnn·深度学习·神经网络·机器学习