jxl操作Excel导入数据库 去掉空行 方法 详解

来源:互联网 发布:交友软件排名 编辑:程序博客网 时间:2024/06/03 16:59

jxl因其快速小巧受到大家的欢迎,但是jxl还是有许多不尽如人意的地方。
本文旨在解决jxl读取excel数据时无法自动取掉空行的问题,其实就是添加一个方法。

//返回去掉空行的记录数
private int getRightRows(Sheet sheet) {
int rsCols = sheet.getColumns(); //列数
int rsRows = sheet.getRows(); //行数
int nullCellNum;
int afterRows = rsRows;
for (int i = 1; i < rsRows; i++) { //统计行中为空的单元格数
   nullCellNum = 0;
    for (int j = 0; j < rsCols; j++) {
        String val = sheet.getCell(j, i).getContents();
        val = StringUtils.trimToEmpty(val);
        if (StringUtils.isBlank(val))
           nullCellNum++;
    }
    if (nullCellNum >= rsCols) { //如果nullCellNum大于或等于总的列数
     afterRows--;          //行数减一
   }
}
return afterRows;
}

因为我主要考虑空行在Sheet表的最后,所以读取数据时还是顺序读取,空行就不读取了。
如果考虑空行在中间的情况,需要对他进行简单的改造,思路是:读取每一行,判断这一行是否为空行,为空跳过,不为空则进行处理。

工作中遇到的一个问题,欢迎大家讨论!

原创粉丝点击