java使用poi操作excel删除一整行

java使用poi操作excel删除一整行

需求1:删除excel表格第4行

代码示例:

sheet.shiftRows(4, sheet.getLastRowNum(),-1);

第一个参数为行数(这里表示第5行,下标从0开始),第二个参数是最后一行,第三个参数-1表示向上移一行。从第5行开始到最后一行都向上移动1行,会把第四行覆盖掉,实现删除指定行的效果。

需求2:读取指定单元格数据(第5行第4列)

代码示例:

  Cell cell = sheet.getRow(4).getCell(3);

因为下标从0开始,所以要减1。

需求3:读取第6行第3列单元格的数据,如果为内容为张三则删除整行

代码示例:

   public static void main(String[] args) throws IOException {
        
            FileInputStream is = new FileInputStream("d:/test.xls");

            HSSFWorkbook workbook = new HSSFWorkbook(is);
            
            HSSFSheet sheet = workbook.getSheetAt(0);     
              if(sheet.getRow(5).getCell(2).toString().equals("张三")){
                   //从第7行开始到最后一行都向上移动一行,覆盖掉第6行
                  sheet.shiftRows(6, sheet.getLastRowNum(),-1);
              }
           
            FileOutputStream os = new FileOutputStream("d:/test.xls");

            workbook.write(os);

            is.close();

            os.close();

        }

你可能感兴趣的:(java,poi,excel)