背景介绍
要频繁地往excel中插入行和删除行,所以行的sheet.getLastRowNum()值一直在变化。
在插入行的代码是
if(sheet.getPhysicalNumberOfRows()!=0){ int rowN=sheet.getLastRowNum()+1; row=sheet.createRow(rowN); }else{ row=sheet.createRow(sheet.getLastRowNum()); } int i=0; //具体赋值 row.createCell(i++).setCellValue(client.getUserNo());//用户号码 row.createCell(i++).setCellValue(client.getSimNo());//SIM号
所以要搞正确getLastRowNum()的值,统计出的行数,不能包括空行。在使用
sheet.shiftRows(i+1, sheet.getLastRowNum(), -1);
进行删除行时,使用getLastRowNum(),统计的行数,包括了一个空白的行。这个是因为shitRow是移动,
sheet.removeRow(row);
才是移除行,为了统计的行数不包括空白,并且不存在空白行,应该使用代码
public static void delteRow(){ try{ FileInputStream is = new FileInputStream("d://1.xls"); HSSFWorkbook workbook = new HSSFWorkbook(is); HSSFSheet sheet = workbook.getSheetAt(0); int ls=sheet.getLastRowNum(); sheet.shiftRows(1, ls, -1); Row row=sheet.getRow(ls); sheet.removeRow(row); FileOutputStream os = new FileOutputStream("d://3.xls"); workbook.write(os); is.close(); os.close(); } catch(Exception e) { e.printStackTrace(); } }
PS:其实很简单,但找方法的时候,一直没找对,曾相过设置shiftRow行为null,其实使用shiftRow,最后的行都没值,但不是null,不知道为什么还能使用getLastRowNum统计到该行。
也试过将row中cell设置为null,其实row不包括了cell.
这里 int ls=sheet.getLastRowNum(); 这段代码还要注意下。否则还是出现空白行被统计,为什么那,因为一个逻辑结构
相关推荐
下面是完整的示例代码,包括读取Excel文件、处理合并单元格以及将数据存储到`List`中: ```java import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRow; import org....
标题中的“poi包 EXCEL模板读取填数据并导出以及在模板某行插入新的行”涉及到了Apache POI库的使用,这是一个Java API,专门用于处理Microsoft Office格式的文件,如Excel。以下是对这个主题的详细解释: Apache ...
通过以上示例代码,我们可以清楚地看到如何使用Java POI库来操作Excel文件,包括读取Sheet、获取行数和列数等。这对于自动化办公和数据分析任务来说是非常有用的技能。希望本文能帮助读者更好地理解和掌握这一技术。
Java如何利用POI读取Excel行数 Java如何利用POI读取Excel行数是Java开发者中一个常见的问题。在Java中,我们可以使用Apache POI库来读取Excel文件中的数据。在本篇文章中,我们将详细介绍如何使用POI库来读取Excel...
Apache POI 是一个流行的开源库,它允许开发者使用Java语言来读取、写入和修改Microsoft Office格式的文件,包括Excel(.xlsx 和 .xls)。本教程将深入探讨如何使用Apache POI库来复制Excel表格的指定行数及其样式。...
### Java 实现删除 Excel 内容之间的空行 在日常工作中,我们经常需要处理大量的 Excel 文件,其中就包括对数据的清洗与整理。本篇文章将详细介绍如何使用 Java 实现删除 Excel 文件中的空行,这对于提高数据处理...
在Java的POI库中,处理Excel文件时,我们经常需要读取并操作其中的数据,包括文本、数字以及图像等元素。然而,POI API在设计时并未直接提供获取单元格内图片的方法,这就需要我们采取一些间接的方式来实现。本知识...
Apache POI 是一个开源项目,专门用于处理Microsoft Office格式的文件,包括Excel。在Java开发中,POI库被广泛用于读取、写入和修改Excel文档。本篇将详细介绍如何使用Apache POI来读取Excel模板,复制工作表(Sheet...
在本主题中,我们将深入探讨如何使用POI库读取Word文档中的文字内容和图片。 首先,我们需要理解Word文档的基本结构。Word文档本质上是由一系列基于XML的数据存储在.OFFICEML格式的文件中,这使得我们可以通过解析...
poi 复制指定行到指定位置. 未包含jar包
在这个场景中,我们关注的是如何使用POI来创建、读取和操作Excel文档。在Web项目中,这种功能通常用于数据导入导出,报表生成,或者任何需要与用户交换表格数据的场景。 **POI生成Excel** 生成Excel文件主要涉及...
该工具类是poi基于事件驱动去读取海量excel数据,解决内存溢出以及空单元格的问题。 该压缩包里面有两个文件,TestExcel.java主要是原始的处理方法,操作简单,适合小数据量的读取。 ExampleEventUserModelUtil.java...
最近在学习POI POI的API没有真正的获取填写数据的行数 我在网上找到了 与其分享
在Excel处理方面,POI提供了一套API,允许程序员在Java环境中创建、修改和读取Excel文件。本篇文章将详细介绍如何使用Apache POI库来实现Excel的Sheet页复制以及根据空行拆分单元格。 一、Sheet页复制 在Excel中,...
Apache POI是一个强大的库,允许程序员使用Java来创建、修改和显示Microsoft Office格式的文件,包括Excel(XLS和XLSX)。在我们的场景中,我们将关注如何读取Excel文件,尤其是处理那些合并了单元格的行与列,因为...
这是一个POI读取word 2003 和 word 2007的例子 是一个Eclipse工程 下载后直接导入工程 运行 src 目录下的 Test java 类即可 这个 rar 包中包含着 POI 读取word 2003 和 word 2007 所需要的 jar 包 也有需要读取的 ...
在用户模式下,POI读取文档的方式是不修改原始数据,只用于读取和分析信息。 描述中提到的“poi用户模式读取”可能是指一个具体的编程任务或教程,教导开发者如何使用POI API来读取Excel文件。下面将详细解释这一...
综上所述,Apache POI提供了一种强大的方式来读取和操作Word文档,包括其中的文本框。通过理解Open XML结构和使用Apache POI提供的API,开发者可以有效地处理Word文档的各个部分,实现自定义的需求。在处理"文本框...
Apache POI是一个强大的库,它允许Java程序员创建、修改和展示MS Office格式的文件,包括Excel。在传统的Excel读取方法中,开发者需要手动处理每一行、每一列的数据,这往往涉及大量的代码和复杂的过程。而ExcelUtil...
这个"POI读取Excel包.rar"的压缩文件很可能包含了POI库的相关jar文件,以及可能的示例代码或教程,帮助用户学习如何使用POI来读取Excel数据。 POI项目始于2001年,它的主要功能是允许Java应用程序创建、修改和显示...