Java操作Excel的Jxl.jar和Poi.jar

jar包下载地址:https://mvnrepository.com/

创建Excelfile:

        File file=new File("test.xls");
        file.createNewFile();
    
        //2:创建工作簿
        WritableWorkbook workbook=Workbook.createWorkbook(file);
        //3:创建sheet,设置第二三四..个sheet,依次类推即可
        WritableSheet sheet=workbook.createSheet("用户管理", 0);
        //4:设置titles
        String[] titles={"编号","账号","密码"};
        //5:单元格
        Label label=null;
        //6:给第一行设置列名
        for(int i=0;i<titles.length;i++){
            //x,y,第一行的列名
            label=new Label(i,0,titles[i]);
            //7:添加单元格
            sheet.addCell(label);
        }
        //8:模拟数据库导入数据
        for(int i=1;i<10;i++){
            //添加编号,第二行第一列
            label=new Label(0,i,i+"");
            sheet.addCell(label);
            //添加账号
            label=new Label(1,i,"10010"+i);
            sheet.addCell(label);
            //添加密码
            label=new Label(2,i,"123456");
            sheet.addCell(label);
        }
        //写入数据,一定记得写入数据,不然你都开始怀疑世界了,excel里面啥都没有
        workbook.write();
        //最后一步,关闭工作簿
        workbook.close();

依赖poi追加数据:

        FileInputStream fs=new FileInputStream("d://test.xls");  //获取d://test.xls  
        POIFSFileSystem ps=new POIFSFileSystem(fs);  //使用POI提供的方法得到excel的信息  
        HSSFWorkbook wb=new HSSFWorkbook(ps);    
        HSSFSheet sheet=wb.getSheetAt(0);  //获取到工作表,因为一个excel可能有多个工作表  
        HSSFRow row=sheet.getRow(0);  //获取第一行(excel中的行默认从0开始,所以这就是为什么,一个excel必须有字段列头),即,字段列头,便于赋值  
        System.out.println(sheet.getLastRowNum()+" "+row.getLastCellNum());  //分别得到最后一行的行号,和一条记录的最后一个单元格  
         
        FileOutputStream out=new FileOutputStream("d://test.xls");  //向d://test.xls中写数据  
        row=sheet.createRow((short)(sheet.getLastRowNum()+1)); //在现有行号后追加数据  
        row.createCell(0).setCellValue("leilei"); //设置第一个(从0开始)单元格的数据  
        row.createCell(1).setCellValue(24); //设置第二个(从0开始)单元格的数据  
 
         
        out.flush();  
        wb.write(out);    
        out.close();    
        System.out.println(row.getPhysicalNumberOfCells()+" "+row.getLastCellNum());    

删除指定行:

        try{  
 
            FileInputStream is = new FileInputStream("d://test.xls");  
 
            HSSFWorkbook workbook = new HSSFWorkbook(is);  
 
            HSSFSheet sheet = workbook.getSheetAt(0);  
 
            sheet.shiftRows(1, 1, 1); //删除第4行  
 
            FileOutputStream os = new FileOutputStream("d://test.xls");  
 
            workbook.write(os);  
 
            is.close();  
 
            os.close();  
 
        } catch(Exception e) {   
 
            e.printStackTrace();  
        }  

代码转载地址:

                      https://blog.csdn.net/Cjava_math/article/details/77648629

                      https://blog.csdn.net/u012045045/article/details/80765703

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值