在POI中,根据换行符,将Word分成一个个的段落,

通过获取段落集合,判断段落中的text等属性是否为空,来进行删除

话不多说,见代码

public static void changeText(XWPFDocument document){//获取文字段落集合List<XWPFParagraph> paragraphs = document.getParagraphs();//所有类型集合(文字段落、表格、图片等)List<IBodyElement> listBe = document.getBodyElements();List<Integer> runList = new ArrayList<>();int n = 0;for(int i = 0; i < listBe.size(); i++){//BodyElementType.PARAGRAPH : 枚举中的文字段落//文字为空时,先添加到list中;//注意picture类型也在PARAGRAPH中,需要校验embeddedPictures的长度是否为0//为0表示空行,大于0表示有图片,可能还有其他类型,暂时没遇到,各位自行斟酌if(StringUtils.isEmpty(paragraphs.get(n).getRuns().get(0).text())&& paragraphs.get(n).getRuns().get(0).getEmbeddedPictures().size() == 0){runList.add(i);}n++;//非文字段落n-1if(listBe.get(i).getElementType() != BodyElementType.PARAGRAPH){n--;}}//遍历list删除for(int i = runList.size() - 1; i >= 0; i--){document.removeBodyElement(runList.get(i));}}

POI删除Word中多余空行相关推荐

  1. 怎样快速删除Word中的空行

    怎样快速删除Word中的空行 平时我们经常会在网站上下载一些文章,用 "复制"."粘贴"到word中进行编辑.经常会出现粘贴到word格式乱七八糟,有很多我们不 ...

  2. 计算机删除文档中所有的空行,win7系统如何删除word中的空行 word空行删除方法...

    在win7纯净版系统中,我们经常会使用word工具来编辑文档,但是在编辑文档的过程中,有时候会发现编辑完成后文章底部总是会有多余的一行空行无法删除,那么要怎么删除word中的空行呢?本文就给大家分享一 ...

  3. 快速删除Word中的空行

    操作目的: 快速删除word中的空行 操作内容: 1,可以点击"开始",找到右侧的"替换"选项,点击"特殊格式"中的"段落标记&q ...

  4. word删除多余换行_批量删除Word中多余回车

    有时候我们从网页上复制一些文章到Word中时,往往会带有好多向下箭头的符号,这就是软回车符号(Word中软回车是同时按住shift+enter得来的), 这些软回车占用了Word很多的空间,那么如何才 ...

  5. 如何删除word中多余的空格和空行

    去除word中多余的空格及空行 一.去掉表格和格式 为了版面的整齐,网页文档都是以表格的形式存在的,只是一般情况下表格的颜色被设为无色或表格宽度被设为0,所以我们在网页上看不到表格.另外,网 页文档中 ...

  6. Word控件Spire.Doc 【段落处理】教程(十四):如C#/VB.NET:删除 Word 中的空行

    将网上的内容复制到Word文档中时,你可能会发现段落之间有很多空行,这样不仅会使文档显得冗长,而且影响可读性.在本文中,您将学习如何使用Spire.Doc for .NET以编程方式删除现有 Word ...

  7. java去除多余excel_java使用poi删除excel中的空行

    根据自己实际操作,poi中lastRowNum方法获取行数的是excel最后有数据的一行,从0开始 而physicalNumberOfRows方法获取的行数是excel最后有数据的一行减去最后一行之前 ...

  8. java excel 空行_java使用poi删除excel中的空行

    根据自己实际操作,poi中lastRowNum方法获取行数的是excel最后有数据的一行,从0开始 而physicalNumberOfRows方法获取的行数是excel最后有数据的一行减去最后一行之前 ...

  9. c语言 去电txt空白行,删除字符串中多余的空白字符和空行(C语言实现)

    要求:处理一个字符串,删除字符串中多余的空格.水平制表符和空行,并满足下列要求: (1)对原字符串只能进行一次扫描. (2)不允许申请新的空间. (3)处理后的字符串的首尾不能有空格.制表符和空行. ...

最新文章

  1. D2前端技术论坛之网页无障碍学习笔记
  2. html 8 盒子的background 颜色的面积
  3. 利用DBMS_FILE_TRANSFER传输数据库文件
  4. condition.await
  5. SAP S/4HANA Customer Vendor Integration-CVI锁机制的实现
  6. asr1601芯片平台实现ssl加密的websocket
  7. JMeter压测笔记
  8. 程序员,想搞事情?进来,就一句话的事!
  9. NAnt 与 MS Build
  10. 数据结构之均摊复杂度的使用(课本)
  11. 查询在st1公司于2018年制作的电影中出演的影星
  12. 推荐一个在线绘图工具ProcessOn----支持流程图、思维导图、UML等
  13. 局部边缘保留滤波器LEP算法原理及matlab代码实现
  14. MFP450 基础飞行平台问世,支持室内室外无GPS环境飞行
  15. 从100套真题中提炼而出的100个经典句子
  16. layui中table表格内容过多自动换行
  17. 将 Visio 的图片复制到 ppt并能编辑
  18. redis安装和特性
  19. .tga图片的文件格式分析
  20. 火车头定制规则php什么意思,火车头采集规则定制 - 92Game.Net

热门文章

  1. java原始人生存繁殖的游戏,原始人荒地求生
  2. 文件系统:FAT16
  3. I - Subsetting and Summing
  4. 三相短路实用计算机的内容是,第七章电力系统三相短路的实用计算.doc
  5. vue结合饿了么_Vue.js 高仿饿了么外卖app 全套_IT教程网
  6. 统计学_第一章_统计和数据
  7. css 设置好看的背景效果(毛玻璃)
  8. 奇数项求和公式_Excel公式求和奇数或偶数周
  9. php 多店铺 小程序,PHP多店铺、多商户小程序商城源码 分销
  10. 大数据周周看:京东将大数据AI科学家裴健招致麾下,英特尔芯片漏洞致股价大跌