本文介绍使用spire.doc for java批量删除word文档中的空白段落。
测试文档如下,包含多行空白无内容的段落:
import com.spire.doc.*;
import com.spire.doc.documents.documentobjecttype;
import com.spire.doc.documents.paragraph;
public class deleteblankparas {
public static void main(string[] args) {
//加载word测试文档
document doc = new document();
doc.loadfromfile("sample.docx");
//遍历section
for(int i = 0; i < doc.getsections().getcount();i )
{
//获取section
section section = doc.getsections().get(i);
//遍历section中的对象
for (int j = 0;j < section.getbody().getchildobjects().getcount();j )
{
//获取对象类型
object object = section.getbody().getchildobjects().get(j).getdocumentobjecttype();
//遍历段落
for(int z = 0 ; z < section.getparagraphs().getcount();z )
{
//获取段落
paragraph paragraph = section.getparagraphs().get(z);
//判断对象类型是否为段落
if(object.equals(documentobjecttype.paragraph))
{
//判断段落内容是否为空
if(paragraph.getchildobjects().getlastitem() == null)
{
//删除空白段落
section.getbody().getparagraphs().remove(paragraph);
z--;
}
}
}
}
}
//保存文档
doc.savetofile("deleteblankparas.docx",fileformat.docx_2013);
doc.dispose();
}
}
空白段落删除效果: