POI中设置Excel单元格格式样式(居中,字体,边框等)

7 篇文章 0 订阅
4 篇文章 0 订阅

 public void test1() throws IOException {
//        1.创建一个文件对象
        HSSFWorkbook hssfWorkbook = new HSSFWorkbook();

//        2.创建一个表对象 通过文件对象创建表对象
        HSSFSheet sheet = hssfWorkbook.createSheet("表名:excel数据表");

//        3.获取行对象 下标从0开始
        HSSFRow row = sheet.createRow(0);

//        4.获取第1个单元格  下标从0开始
        HSSFCell cell = row.createCell(0);

//        5.在单元格中写入数据
        cell.setCellValue("Hello Wolld");

//        6.保存在磁盘中 流  文件名的后缀必须有.xls
        hssfWorkbook.write(new FileOutputStream("E://xbx.xls"));
    }

    public void test2() throws IOException {

        ..............
//        创建sheet什么的就不多说了,直接进入正题
        //创建sheet页
        HSSFCellStyle cellStyle = wb.createCellStyle();

        // 一、设置背景颜色:
        cellStyle.setFillForegroundColor((short) 13);//背景颜色
        cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);

        //二、设置边框:
        cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下
        cellStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左
        cellStyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上
        cellStyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右

        //三、设置居中:
        cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 居中

        //四、设置字体:
        HSSFFont font = wb.createFont();
        font.setFontName("黑体");
        font.setFontHeightInPoints((short) 16);//字体大小

        HSSFFont font2 = wb.createFont();
        font2.setFontName("仿宋_GB2312");
        font2.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗体显示
        font2.setFontHeightInPoints((short) 12);

        cellStyle.setFont(font);//选择需要用到的字体格式


        //五、设置列宽:
        sheet.setColumnWidth(0, 3755);
        //第一个参数代表列id(从0开始),第2个参数代表宽度值  参考 :"2012-08-10"的宽度为2500


        //六、设置自动换行:
        cellStyle.setWrapText(true);//自动换行


        //七、合并单元格:
        //参数1:行号 参数2:起始列号 参数3:行号 参数4:终止列号
        Region region1 = new Region(0, (short) 0, 0, (short) 6);


        //此方法在POI3.8中已经被废弃,建议使用下面一个或者用
        CellRangeAddress region1 = new CellRangeAddress(rowNumber, rowNumber, (short) 0, (short) 11);


        //参数1:起始行 参数2:终止行 参数3:起始列 参数4:终止列
        //但应注意两个构造方法的参数不是一样的,具体使用哪个取决于POI的不同版本。

        sheet.addMergedRegion(region1);

    }
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十&年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值