java 利用 poi.jar 生成Excel 修改Excel

   

//demo2为生成Excel  demo3 为修改Excel

 

    @Test
    public void demo2 () throws Exception, Exception {

//设置基础类
        HSSFWorkbook hssfWorkbook = new HSSFWorkbook();

//创建第一个sheet页面
        HSSFSheet sheet1 = hssfWorkbook.createSheet("Good Boy");

//创建第一个sheet页面的第一二行
        HSSFRow row1 = sheet1.createRow(0);
        HSSFRow row2 = sheet1.createRow(1);

//设置行高
        Short short1 = new Short((short) 500);
        row1.setHeight(short1);

//设置第一行的第一个单元格
        HSSFCell cell1 = row1.createCell(0);

//为第一行第一个单元格赋值
        cell1.setCellValue("档案机密----CF");

//合并单元格
        sheet1.addMergedRegion(new CellRangeAddress(0, 0, 0, 12));

//给第二行单元格赋值
        for (int i = 1; i < 13; i++) {
            HSSFCell createCell = row2.createCell(i);
            createCell.setCellValue(i);
        }
        OutputStream outputStream = new FileOutputStream("C:\\Users\\lenovo\\Desktop\\123.xls");
        hssfWorkbook.write(outputStream);
        outputStream.flush();
        outputStream.close();
        
        
    }

 

 

//demo3可以进行修改Excel   可以通过实际方法  利用前台修改内容传参到后台,在进行保存
    @Test
    public void demo3 () throws Exception, Exception {

//获取文件
        File file = new File("C:\\Users\\lenovo\\Desktop\\123.xls");
        if(file.exists()) {
            InputStream inputStream = new FileInputStream(file);
            HSSFWorkbook hssfWorkbook = new HSSFWorkbook(inputStream);

//得到第一个sheet页面
            HSSFSheet sheetAt = hssfWorkbook.getSheetAt(0);

//便利循环赋值
            for (int i = 1; i <= sheetAt.getLastRowNum(); i++) {
                HSSFRow row = sheetAt.getRow(i);
                HSSFCell cell = row.getCell(1);
                cell.setCellValue(new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
            }

//删除之前的Excel
            file.delete();

//重新保存一份
            OutputStream outputStream = new FileOutputStream("C:\\Users\\lenovo\\Desktop\\123.xls");
            hssfWorkbook.write(outputStream);
            outputStream.flush();
            outputStream.close();
        }
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值