内容简介:Excel是日常工作中常用的办公软件之一。在制作表格的时候,有时需要在工作表中插入一个或多个行和列,同时也会遇到需要将工作表中多余的行或列删除的情况。本文就将通过使用Java程序来演示如何删除Excel中的行和列,主要包含了删除指定的行和列、删除空白的行和列,以及删除含有关键字的行。方法1:通过官方网站下载获取jar包。解压后将lib文件夹下的Spire.Xls.jar文件导入Java程序。(如下图)
Excel是日常工作中常用的办公软件之一。在制作表格的时候,有时需要在工作表中插入一个或多个行和列,同时也会遇到需要将工作表中多余的行或列删除的情况。本文就将通过使用 Java 程序来演示如何删除Excel中的行和列,主要包含了删除指定的行和列、删除空白的行和列,以及删除含有关键字的行。
使用工具:Free Spire.XLS for Java (免费版)
Jar文件获取及导入:
方法1:通过官方网站下载获取jar包。解压后将lib文件夹下的Spire.Xls.jar文件导入Java程序。(如下图)
方法2:通过maven仓库安装导入。具体安装详解参见此网页。
【示例1】删除指定的行和列
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class DeleteSpecificRowsAndColumns {
public static void main(String[] args) {
//创建一个Workbook类的对象,并加载测试文档
Workbook wb = new Workbook();
wb.loadFromFile("D:\\Desktop\\Sample.xlsx");
//获取工作表
Worksheet sheet = wb.getWorksheets().get(0);
//通过索引删除指定的行
sheet.deleteRow(4);
//通过索引删除指定的列
sheet.deleteColumn(5);
//保存文档
wb.saveToFile("output/DeleteSpecificRowsAndColumns.xlsx", ExcelVersion.Version2016);
}
}
删除效果:
【示例2】删除空白的行和列
import com.spire.xls.ExcelVersion;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;
public class DeleteBlankRowsAndColumns {
public static void main(String[] args) {
//创建一个Workbook类的对象,并加载测试文档
Workbook wb = new Workbook();
wb.loadFromFile("D:\\Desktop\\Sample2.xlsx");
//获取工作表
Worksheet sheet = wb.getWorksheets().get(0);
//遍历所有列
for (int i = sheet.getLastRow(); i >= 1; i--)
{
//删除空白列
if (sheet.getRows()[i-1].isBlank())
{
//移除空白列
sheet.deleteRow(i);
}
}
//遍历所有行
for (int j = sheet.getLastColumn(); j >= 1; j--)
{
//删除空白行
if (sheet.getColumns()[j-1].isBlank())
{
//移除空白行
sheet.deleteColumn(j);
}
}
//保存文档
wb.saveToFile("output/DeleteBlankRowsAndColumns.xlsx", ExcelVersion.Version2016);
}
}
删除效果:
【示例3】删除含有关键字的行
import com.spire.xls.*;
import java.util.ArrayList;
import java.util.List;
public class DeleteRowsByKeywords {
public static void main(String[] args) {
//创建一个Workbook类的对象,并加载测试文档
Workbook wb = new Workbook();
wb.loadFromFile("D:\\Desktop\\Sample3.xlsx");
//获取工作表
Worksheet sheet = wb.getWorksheets().get(0);
//通过getRowList方法获取含有关键字的列
List<Integer> list = getRowList(sheet,"你好,世界!");
//遍历所有工作表
for (int i = 0; i < list.size(); i++) {
//删除特定列
sheet.deleteRow(list.get(i));
}
//保存文档
wb.saveToFile("output/DeleteRowsByKeywords.xlsx",ExcelVersion.Version2016);
}
//创建getRowList方法获取含有关键字的列数
static List<Integer> getRowList(Worksheet sheet, String keyword) {
int rowNum;
List<Integer> rowList = new ArrayList<>();
for (int i = sheet.getLastRow(); i >= 1; i--) {
rowNum = i;
for (int j = sheet.getLastColumn(); j >= 1; j--) {
if (sheet.get(i, j).getText().contains(keyword)) {
rowList.add(rowNum);
break;
}
}
}
return rowList;
}
}
删除效果:
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- MySQL删除操作其实是假删除
- C++拾趣——STL容器的插入、删除、遍历和查找操作性能对比(Windows VirtualStudio)——删除
- 我用 Python 找出了删除我微信的所有人并将他们自动化删除了
- C++拾趣——STL容器的插入、删除、遍历和查找操作性能对比(Windows VirtualStudio)——遍历和删除
- ruby-on-rails-4 – Rails 4:如何从数据库中删除或删除(连接)表表?
- 删除并恢复
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Beginning ASP.NET 4 in C# and Vb
Imar Spaanjaars / Wrox / 2010-3-19 / GBP 29.99
This book is for anyone who wants to learn how to build rich and interactive web sites that run on the Microsoft platform. With the knowledge you gain from this book, you create a great foundation to ......一起来看看 《Beginning ASP.NET 4 in C# and Vb》 这本书的介绍吧!