在编辑Word文档时,我们有时需要调整段落的布局、删除不必要的段落以优化文档的结构和阅读体验。本文将通过以下3个简单示例演示如何使用免费.NET库删除Word文档中的段落 。

  • C# 删除Word中的指定段落
  • C# 删除Word中的所有段落
  • C# 删除Word中的空白段落

免费.NET Word 库 - Free Spire.Doc for .NET。该库支持实现创建、编辑、转换Word文档等多种操作,可以直接在Visual Studio中通过NuGet搜索 “FreeSpire.Doc”,然后点击“安装”将其引用到程序中。或者通过该链接下载产品包,解压后再手动将dll文件添加引用至程序。

https://www.e-iceblue.cn/Downloads/Free-Spire-Doc-NET.html

C# 删除Word中的指定段落

通过 Section.Paragraphs 属性获取 ParagraphCollection 对象后,再用 RemoveAt(int index) 方法可以实现删除指定索引处的段落。具体代码如下:

using Spire.Doc;

namespace RemoveParagraphs
{
internal class Program
{
static void Main(string[] args)
{
//加载Word文档
Document document = new Document();
document.LoadFromFile("南极洲.docx"); //获取第一节
Section section = document.Sections[0]; //删除第四段
section.Paragraphs.RemoveAt(3); //保存文档
document.SaveToFile("删除指定段落.docx", FileFormat.Docx2016);
}
}
}

C# 删除Word中的所有段落

ParagraphCollection 类的 Clear() 方法可以直接删除指定section中所有段落,要删除文档每一节中的所有段落,可以通过循环实现。具体代码如下:

using Spire.Doc;

namespace RemoveAllParagraphs
{
internal class Program
{
static void Main(string[] args)
{
//加载Word文档
Document document = new Document();
document.LoadFromFile("南极洲.docx"); //遍历所有节
foreach (Section section in document.Sections)
{
//删除段落
section.Paragraphs.Clear();
} //保存文档
document.SaveToFile("删除所有段落.docx", FileFormat.Docx2016);
}
}
}

C# 删除Word中的空白段落

删除空白段落需要先遍历每一节中的所有段落并判断其中是否包含内容,如果为空白行则通过DocumentObjectCollection.Remove() 方法将其删除。具体代码如下:

using Spire.Doc;
using Spire.Doc.Documents;
using System; namespace RemoveEmptyLines
{
class Program
{ static void Main(string[] args)
{ //加载Word文档
Document doc = new Document();
doc.LoadFromFile("南极洲1.docx"); //遍历所有段落
foreach (Section section in doc.Sections)
{
for (int i = 0; i < section.Body.ChildObjects.Count; i++)
{
if (section.Body.ChildObjects[i].DocumentObjectType == DocumentObjectType.Paragraph)
{
//判断当前段落是否为空白段落
if (String.IsNullOrEmpty((section.Body.ChildObjects[i] as Paragraph).Text.Trim()))
{
//删除空白段落
section.Body.ChildObjects.Remove(section.Body.ChildObjects[i]);
i--;
}
} }
} //保存文档
doc.SaveToFile("删除空白行.docx", FileFormat.Docx2016); }
}
}


更多功能示例,可点击:Spire.Doc for .NET 中文教程

C# 删除Word文档中的段落的更多相关文章

  1. 如何删除Word文档中的空白页

    需求 平常我们写 Office 文档的时候,经常会不小心多加几页空白,那么如何删除 word 文档中的空白页呢? 小编结合网友提供的办法和亲身测试的操作经验,给大家提供几个可行的方案. 原文:如何删除 ...

  2. 如何批量删除word文档中的超级链接?

    有时候从网页上copy来的文章中,会带有非常多的链接,这些链接很烦人是吧?如何批量删除(一次性全部删除)word文章中的超链接呢? 有些朋友说,Ctrl+A全选文章,然后点击格式工具栏上的“清除格式” ...

  3. 删除word文档中表格后的空行

    处理办法为: 方法1:使上.下页边距数值缩小,从而使页面扩大能容纳下这一段落行.   方法2:光标处于最后段落行符号前,右键→段落→缩进和间距→间距→行距→固定值→设置值→1磅→确定.

  4. c# 删除word文档中某一页

    object objPage = 14; int pages = oDoc.ComputeStatistics(Microsoft.Office.Interop.Word.WdStatistic.wd ...

  5. 处理Word文档中所有修订

    打开现有文档进行编辑 若要打开现有文档,您可以将 Word类实例化,如以下 using 语句所示. 为此,您可以使用Open(String, Boolean) 方法打开具有指定 fileName 的字 ...

  6. 利用Python-docx 读写 Word 文档中的正文、表格、段落、字体等

    前言: 前两篇博客介绍了 Python 的 docx 模块对 Word 文档的写操作,这篇博客将介绍如何用 docx 模块读取已有 Word 文档中的信息. 本篇博客主要内容有: 1.获取文档的章节信 ...

  7. 如何通过 Java 代码隐藏 Word 文档中的指定段落

    在编辑Word文档时,我们有时需要将一些重要信息保密. 因此,可以隐藏它们以确保机密性. 在本文中,将向您介绍如何通过 Java 程序中的代码隐藏 Word 文档中的特定段落.下面是我整理的具体步骤, ...

  8. C# 在Word文档中生成条形码

    C# 在Word文档中生成条形码 简介 条形码是由多个不同的空白和黑条按照一定的顺序组成,用于表示各种信息如产品名称.制造商.类别.价格等.目前,条形码在我们的日常生活中有着很广泛的应用,不管是在图书 ...

  9. C# 提取Word文档中的图片

    C# 提取Word文档中的图片 图片和文字是word文档中两种最常见的对象,在微软word中,如果我们想要提取出一个文档内的图片,只需要右击图片选择另存为然后命名保存就可以了,今天这篇文章主要是实现使 ...

  10. C# Word文档中插入、提取图片,文字替换图片

    Download Files:ImageOperationsInWord.zip 简介 在这篇文章中我们可以学到在C#程序中使用一个Word文档对图像的各种操作.图像会比阅读文字更有吸引力,而且图像是 ...

随机推荐

  1. [NOIP2010 提高组] 关押罪犯 - 洛谷

    P1525 [NOIP2010 提高组] 关押罪犯 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 种类并查集 #include <bits/stdc++.h> #def ...

  2. SMU Summer 2023 Contest Round 11(2022-2023 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2022))

    SMU Summer 2023 Contest Round 11(2022-2023 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2022 ...

  3. protostuff序列化接口封装

    1.pom <dependency> <groupId>com.dyuproject.protostuff</groupId> <artifactId> ...

  4. win指令学习收集

    要执行多句,需要用到逻辑判断 1 & 2 1成不成功都会执行2 1 && 2 1成功才会执行2 1 || 2 1不成功才会执行2

  5. 【Mac + Python + Selenium】之获取验证码图片code并进行登录

    自己新总结了一篇文章,对代码进行了优化,另外附加了静态图片提取文字方法,两篇文章可以结合着看:<[Python]Selenium自动化测试之动态识别验证码图片方法(附静态图片文字获取)> ...

  6. springjdbc处理nvarchar

    当我们使用spring-jdbc来做持久化时(注意不是spring-data-jbc),有时候一些特殊字符存入数据库时会用到nvarchar.nvarchar2这种类型(比如存放化学式,如CO₂等), ...

  7. Navicat16 安装破解教程

    Navicat16 安装破解教程 Navicat 16.1 什么是Navicat? 官网下载Navicat 注册包的使用 Navicat 16.1 在文章最后添加工作号 回复关键词获取注册机 什么是N ...

  8. Unrecognized SSL message, plaintext connection?

    报错:Unrecognized SSL message, plaintext connection? 修改:把 requestContext.setScheme(Scheme.HTTPS);修改为 r ...

  9. XGBoost模型 0基础小白也能懂(附代码)

    XGBoost模型 0基础小白也能懂(附代码) 原文链接 啥是XGBoost模型 XGBoost 是 eXtreme Gradient Boosting 的缩写称呼,它是一个非常强大的 Boostin ...

  10. 如何在 Nuxt 3 中有效使用 TypeScript

    title: 如何在 Nuxt 3 中有效使用 TypeScript date: 2024/9/9 updated: 2024/9/9 author: cmdragon excerpt: 摘要:本文详 ...