精华内容
下载资源
问答
  • java导出excel合并单元格
    2020-12-21 11:17:05

    合并单元格代码:

    //合并单元格
    CellRangeAddress cellRangeAddress = new CellRangeAddress(0, 1, 0, 0);
    sheet.addMergedRegion(cellRangeAddress);
    
    //加入边框
    setBorderStyle(BorderStyle.THIN, cellRangeAddress, sheet);

    CellRangeAddress参数说明

    前二个参数:第几行到第几行合并

    后二个参数:第几列到第几列合并

    合并后加入边框代码:

    /**
     * 合并单元格设置边框
     * @param
     * @param cellRangeTitle
     * @param sheet
     */
    private void setBorderStyle(BorderStyle borderStyle, CellRangeAddress cellRangeTitle, Sheet sheet){
        RegionUtil.setBorderBottom(borderStyle, cellRangeTitle, sheet);//下边框
        RegionUtil.setBorderLeft(borderStyle, cellRangeTitle, sheet);//左边框
        RegionUtil.setBorderRight(borderStyle, cellRangeTitle, sheet);//右边框
        RegionUtil.setBorderTop(borderStyle, cellRangeTitle, sheet);//上边框
    }

     

    更多相关内容
  • Java 访问修饰符权限的区别; public 所有类都可访问 protected 只允许包内、子类访问。 默认 只允许包内访问 private 只允许类内访问 String 是否可以继承, “+” 怎样实现? String 是 final 类,不可继承。 阿里...

    阿里一面

    1. 讲一下 HashMap 中 put 方法过程?
    2. 对 Key求Hash 值,然后再计算 下标。
    3. 如果没有碰撞,直接放入桶中,
    4. 如果碰撞了,以链表的方式链接到后面,
    5. 如果链表长度超过阀值(TREEIFY_THRESHOLD == 8),就把链表转成红黑树。
    6. GC 算法,除了常见的复制算法,标记整理,标记清除算法,还有哪些?
    7. 增量算法。主要思想是垃圾收集线程与用户线程交替执行。也可以说一边执行垃圾回收一边执行用户代码。但是这种方法会造成系统吞吐量下降。
    8. Spring 主要思想是什么,回答 IOC 和AOP,怎么自己实现 AOP ?
    9. 使用基于反射的动态代理
    10. SpringAOP 用的哪一种代理

    阿里二面

    1. HashMap 怎样解决冲突,讲一下扩容过程,假如一个值在原数组中,现在移动了新数组,位置肯定改变了,那是什么定位到在这个值新数组中的位置,
    2. 将新节点加到链表后,
    3. 容量扩充为原来的两倍,然后对每个节点重新计算哈希值。
    4. 这个值只可能在两个地方,一个是原下标的位置,另一种是在下标为 <原下标+原容量> 的位置。
    5. 抛开 HashMap,hash 冲突有哪些解决办法?
    6. 10w行数据,每行一个单词,统计出现次数出现最多的前100个。
    7. 一个文本文件,给你一个单词,判断单词是否出现。
    8. Java 访问修饰符权限的区别;
    9. public 所有类都可访问
    10. protected 只允许包内、子类访问。
    11. 默认 只允许包内访问
    12. private 只允许类内访问
    13. String 是否可以继承, “+” 怎样实现?
    14. String 是 final 类,不可继承。

    阿里三面

    1. 线程安全性
    2. HashMap、ConcurrentHashMap 区别。
    3. 索引计算消除了最高位的影响
    4. 默认容量: 16(若定义了初始容量©,容量会定义为大于(c + (c >>> 1) +1) 的最小 2^n)
    5. 例如:初始容量为 13,则真正的容量是 32.
    6. 线程安全,并发性能较好
    7. 将M个平均长度为N的有序队列组合成一个有序队列
    8. 10亿条短信,找出前一万条重复率高的
    9. 对一万条数据排序,你认为最好的方式是什么
    10. 假如有100万个玩家,需要对这100W个玩家的积分中前100名的积分,按照顺序显示在网站中,要求是实时更新的。积分可能由做的任务和获得的金钱决定。问如何对着100万个玩家前100名的积分进行实时更新?
    11. 1.1 支持断点续传。RANGE:bytes=XXX 表示要求服务器从文件 XXX 字节处开始传送
    12. 还有一些其他的改进,有兴趣可以自行查阅相关资料
    13. HTTP 和 HTTPS 的主要区别
    14. 安全。HTTP 直接与 TCP 通信,而 HTTPS 是先与 SSL(加密) 通信,然后再由 SSL 和 TCP 通信

    面试总结及建议

    每一次Java面试,其实都是一次学习机会,是对自己技术知识栈的梳理、考核、复盘。我们应该抱着学习的态度,认真对待,找到自己比较薄弱的环节,尽快去查漏补缺学习巩固。对于面试来说,其实也没有太多的技巧可言,面试官主要看重的就是个人能力,无非就是两个方面:

    • 技术广度
    • 技术深度

    技术学习总结

    学习技术一定要制定一个明确的学习路线,这样才能高效的学习,不必要做无效功,既浪费时间又得不到什么效率,大家不妨按照我这份路线来学习。

    最后面试分享

    大家不妨直接在牛客和力扣上多刷题,同时,我也拿了一些面试题跟大家分享,也是从一些大佬那里获得的,大家不妨多刷刷题,为金九银十冲一波!

    (img-04Ic0aEo-1626925767005)]

    [外链图片转存中…(img-rqLu0sxw-1626925767007)]

    最后,若需要完整pdf版,可以点赞本文后点击这里免费领取

    展开全文
  • java导出Excel合并单元格

    万次阅读 2019-02-12 10:09:43
    网上java导出excel表格并合并单元格的资料不完全,我整理了一份,并亲测能用,附截图。 ①java导出excel用到POI所有jar包,大家可以直接到下面地址下载点击打开链接 ②模拟数据类 package org;   public class ...

    网上java导出excel表格并合并单元格的资料不完全,我整理了一份,并亲测能用,附截图。

    ①java导出excel用到POI所有jar包,大家可以直接到下面地址下载点击打开链接

    ②模拟数据类

    package org;
     
    public class WorkSheetDetail {
        //工作内容
        private String workCtx;
        // 用工人总数    工日数 = gwnNum+tmnNum
        private Float totalHumanDays;
        //普工用工数 1-4小时为半天,4-8小时为一天;120每天
        private Integer gwnNum;
        //技工用工数 1-4小时为半天,4-8小时为一天;160每天
        private Integer tmnNum;
        // 单价(元)
        private Float unitPrice;
        // 金额(元) = gwnNum*120+tmnNum+160
        private Float unitAmount;
        // 备注
        private String notes; 
        
        public WorkSheetDetail(String workCtx, Float totalHumanDays, Integer gwnNum, Integer tmnNum, Float unitPrice,
                Float unitAmount, String notes) {
            super();
            this.workCtx = workCtx;
            this.totalHumanDays = totalHumanDays;
            this.gwnNum = gwnNum;
            this.tmnNum = tmnNum;
            this.unitPrice = unitPrice;
            this.unitAmount = unitAmount;
            this.notes = notes;
        }
        public String getWorkCtx() {
            return workCtx;
        }
        public void setWorkCtx(String workCtx) {
            this.workCtx = workCtx;
        }
        public Float getTotalHumanDays() {
            return totalHumanDays;
        }
        public void setTotalHumanDays(Float totalHumanDays) {
            this.totalHumanDays = totalHumanDays;
        }
        public Integer getGwnNum() {
            return gwnNum;
        }
        public void setGwnNum(Integer gwnNum) {
            this.gwnNum = gwnNum;
        }
        public Integer getTmnNum() {
            return tmnNum;
        }
        public void setTmnNum(Integer tmnNum) {
            this.tmnNum = tmnNum;
        }
        public Float getUnitPrice() {
            return unitPrice;
        }
        public void setUnitPrice(Float unitPrice) {
            this.unitPrice = unitPrice;
        }
        public Float getUnitAmount() {
            return unitAmount;
        }
        public void setUnitAmount(Float unitAmount) {
            this.unitAmount = unitAmount;
        }
        public String getNotes() {
            return notes;
        }
        public void setNotes(String notes) {
            this.notes = notes;
        }
        
    }

    ③java导出excel方法
    package org;
    import java.io.FileOutputStream;
    import java.util.List;
    import org.apache.poi.hssf.usermodel.HSSFCell;
    import org.apache.poi.hssf.usermodel.HSSFCellStyle;
    import org.apache.poi.hssf.usermodel.HSSFFont;
    import org.apache.poi.hssf.usermodel.HSSFHeader;
    import org.apache.poi.hssf.usermodel.HSSFRow;
    import org.apache.poi.hssf.usermodel.HSSFSheet;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    import org.apache.poi.ss.util.CellRangeAddress;
    public class ExportExcel {
        public void getValue(List<WorkSheetDetail> userList,FileOutputStream fout){
              try{
                    //1.创建工作簿
                    HSSFWorkbook workbook = new HSSFWorkbook();
                    //1.1创建合并单元格对象
                    CellRangeAddress callRangeAddress = new CellRangeAddress(0,0,0,7);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddress1 = new CellRangeAddress(1,1,0,7);//起始行,结束行,起始列,结束列
                    //班组与时间start
                    CellRangeAddress callRangeAddress20 = new CellRangeAddress(2,2,0,2);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddress21 = new CellRangeAddress(2,2,3,4);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddress22 = new CellRangeAddress(2,2,5,7);//起始行,结束行,起始列,结束列
                    //班组与时间end
                    
                    //标题
                    CellRangeAddress callRangeAddress31 = new CellRangeAddress(3,4,0,0);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddress32 = new CellRangeAddress(3,4,1,1);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddress33 = new CellRangeAddress(3,4,2,2);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddress34 = new CellRangeAddress(3,3,3,4);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddress35 = new CellRangeAddress(3,4,5,5);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddress36 = new CellRangeAddress(3,4,6,6);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddress37 = new CellRangeAddress(3,4,7,7);//起始行,结束行,起始列,结束列
                    
                    //金额
                    CellRangeAddress callRangeAddressnumber1 = new CellRangeAddress(userList.size()+5,userList.size()+5,0,2);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddressnumber2 = new CellRangeAddress(userList.size()+5,userList.size()+5,3,7);//起始行,结束行,起始列,结束列
     
                    //负责人
                    CellRangeAddress callRangeAddressPersion1 = new CellRangeAddress(userList.size()+6,userList.size()+6,0,2);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddressPersion2 = new CellRangeAddress(userList.size()+6,userList.size()+6,3,4);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddressPersion3 = new CellRangeAddress(userList.size()+6,userList.size()+6,5,7);//起始行,结束行,起始列,结束列
     
                    //说明
                    CellRangeAddress callRangeAddressinfo = new CellRangeAddress(userList.size()+7,userList.size()+7,0,7);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddressinfo1 = new CellRangeAddress(userList.size()+8,userList.size()+8,0,7);//起始行,结束行,起始列,结束列
                    CellRangeAddress callRangeAddressinfo2 = new CellRangeAddress(userList.size()+9,userList.size()+9,0,7);//起始行,结束行,起始列,结束列
     
                    //部项目经理部
                    HSSFCellStyle headStyle = createCellStyle(workbook,(short)10,false,true);
                    //派工单
                    HSSFCellStyle erStyle = createCellStyle(workbook,(short)13,true,true);
                    //班组和时间
                    HSSFCellStyle sanStyle = createCellStyle(workbook,(short)10,false,false);
                    //标题样式
                    HSSFCellStyle colStyle = createCellStyle(workbook,(short)10,true,true);
                    //内容样式
                    HSSFCellStyle cellStyle = createCellStyle(workbook,(short)10,false,true);
                    //2.创建工作表
                    HSSFSheet sheet = workbook.createSheet("派单");
                    //2.1加载合并单元格对象
                    sheet.addMergedRegion(callRangeAddress);
                    sheet.addMergedRegion(callRangeAddress1);
                    sheet.addMergedRegion(callRangeAddress20);
                    sheet.addMergedRegion(callRangeAddress21);
                    sheet.addMergedRegion(callRangeAddress22);
                    sheet.addMergedRegion(callRangeAddress31);
                    sheet.addMergedRegion(callRangeAddress32);
                    sheet.addMergedRegion(callRangeAddress33);
                    sheet.addMergedRegion(callRangeAddress34);
                    sheet.addMergedRegion(callRangeAddress35);
                    sheet.addMergedRegion(callRangeAddress36);
                    sheet.addMergedRegion(callRangeAddress37);
                    sheet.addMergedRegion(callRangeAddressnumber1);
                    sheet.addMergedRegion(callRangeAddressnumber2);
                    sheet.addMergedRegion(callRangeAddressPersion1);
                    sheet.addMergedRegion(callRangeAddressPersion2);
                    sheet.addMergedRegion(callRangeAddressPersion3);
                    sheet.addMergedRegion(callRangeAddressinfo);
                    sheet.addMergedRegion(callRangeAddressinfo1);
                    sheet.addMergedRegion(callRangeAddressinfo2);
                    //设置默认列宽
                    sheet.setDefaultColumnWidth(15);
                    //3.创建行
                    //3.1创建头标题行;并且设置头标题
                    HSSFRow row = sheet.createRow(0);
                    HSSFCell cell = row.createCell(0);
                    //加载单元格样式
                    cell.setCellStyle(headStyle);
                    cell.setCellValue("xxxx项目部");
                    
                    HSSFRow rower = sheet.createRow(1);
                    HSSFCell celler = rower.createCell(0);
                    //加载单元格样式
                    celler.setCellStyle(erStyle);
                    celler.setCellValue("派 工 单");
                    
                    HSSFRow rowsan = sheet.createRow(2);
                    HSSFCell cellsan = rowsan.createCell(0);
                    HSSFCell cellsan1 = rowsan.createCell(3);
                    HSSFCell cellsan2 = rowsan.createCell(5);
                    //加载单元格样式
                    cellsan.setCellStyle(sanStyle);
                    cellsan.setCellValue("协作单位:x施工一堆");
                    cellsan1.setCellStyle(sanStyle);
                    cellsan1.setCellValue("");
                    cellsan2.setCellStyle(sanStyle);
                    cellsan2.setCellValue("时间:2017年 10月 20日");
                    
                    //3.2创建列标题;并且设置列标题
                    HSSFRow row2 = sheet.createRow(3);
                    String[] titles = {"序号","工作内容","用工总人数","工日数","","单价(元)","金额(元)","备注"};//""为占位字符串
                    for(int i=0;i<titles.length;i++)
                    {
                        HSSFCell cell2 = row2.createCell(i);
                        //加载单元格样式
                        cell2.setCellStyle(colStyle);
                        cell2.setCellValue(titles[i]);
                    }
                    
                    HSSFRow rowfour = sheet.createRow(4);
                    String[] titlefour = {"普工用工数","技工用工数"};
                    for(int i=0;i<titlefour.length;i++)
                    {
                        HSSFCell cell2 = rowfour.createCell(i+3);
                        //加载单元格样式
                        cell2.setCellStyle(colStyle);
                        cell2.setCellValue(titlefour[i]);
                    }
                    
                    
                    //4.操作单元格;将用户列表写入excel
                    if(userList != null)
                    {
                        int i=1;
                        for(int j=0;j<userList.size();j++)
                        {
                            //创建数据行,前面有两行,头标题行和列标题行
                            HSSFRow row3 = sheet.createRow(j+5);
                            HSSFCell cell0 = row3.createCell(0);
                            cell0.setCellStyle(cellStyle);
                            cell0.setCellValue(i++);
                            
                            HSSFCell cell1 = row3.createCell(1);
                            cell1.setCellStyle(cellStyle);
                            cell1.setCellValue(userList.get(j).getWorkCtx());
                            
                            HSSFCell cell2 = row3.createCell(2);
                            cell2.setCellStyle(cellStyle);
                            cell2.setCellValue(userList.get(j).getTotalHumanDays());
                            
                            HSSFCell cell3 = row3.createCell(3);
                            cell3.setCellStyle(cellStyle);
                            cell3.setCellValue(userList.get(j).getGwnNum());
                            
                            HSSFCell cell4 = row3.createCell(4);
                            cell4.setCellStyle(cellStyle);
                            cell4.setCellValue(userList.get(j).getTmnNum());
                            
                            HSSFCell cell5 = row3.createCell(5);
                            cell5.setCellStyle(cellStyle);
                            cell5.setCellValue(userList.get(j).getTotalHumanDays());
                            
                            HSSFCell cell6 = row3.createCell(6);
                            cell6.setCellStyle(cellStyle);
                            cell6.setCellValue(userList.get(j).getUnitAmount());
                            
                            HSSFCell cell7= row3.createCell(7);
                            cell7.setCellStyle(cellStyle);
                            cell7.setCellValue(userList.get(j).getUnitPrice());
                        }
                    }
                    
                    HSSFRow rownumber = sheet.createRow(userList.size()+5);
                    HSSFCell cellnumber = rownumber.createCell(0);
                    HSSFCell cellnumber1 = rownumber.createCell(3);
                    //加载单元格样式
                    cellnumber.setCellStyle(sanStyle);
                    cellnumber.setCellValue("金额合计(大写)");
                    cellnumber1.setCellStyle(sanStyle);
                    cellnumber1.setCellValue("¥ 78 元; 大写:柒拾捌元整");
     
                    HSSFRow rowpersion = sheet.createRow(userList.size()+6);
                    HSSFCell cellpersion = rowpersion.createCell(0);
                    HSSFCell cellpersion1 = rowpersion.createCell(3);
                    HSSFCell cellpersion2 = rowpersion.createCell(5);
     
                    //加载单元格样式
                    cellpersion.setCellStyle(sanStyle);
                    cellpersion.setCellValue("协作单位负责人:");
                    cellpersion1.setCellStyle(sanStyle);
                    cellpersion1.setCellValue("经办人:");
                    cellpersion2.setCellStyle(sanStyle);
                    cellpersion2.setCellValue("部门负责人:");
                    
                    HSSFRow rowinfo = sheet.createRow(userList.size()+7);
                    HSSFCell cellinfo = rowinfo.createCell(0);
                    cellinfo.setCellStyle(sanStyle);
                    cellinfo.setCellValue("说明:1、本标工单一式两联,第一联为派工人(工长)存根,第二联用作结算。");
                    
                    HSSFRow rowinfo1 = sheet.createRow(userList.size()+8);
                    HSSFCell cellinfo1 = rowinfo1.createCell(0);
                    cellinfo1.setCellStyle(sanStyle);
                    cellinfo1.setCellValue("2、本标工单必须在用工当日签认,否则不予认可;三日内交合同处汇总。");
                    
                    HSSFRow rowinfo2 = sheet.createRow(userList.size()+9);
                    HSSFCell cellinfo2 = rowinfo2.createCell(0);
                    cellinfo2.setCellStyle(sanStyle);
                    cellinfo2.setCellValue("3、工日数填写精确到半个工日。");
                    //5.输出
                    workbook.write(fout);
    //                workbook.close();
                    //out.close();
                }catch(Exception e)
                {
                    e.printStackTrace();
                }
        }
        
        /**
         * 
         * @param workbook
         * @param fontsize
         * @return 单元格样式
         */
        private static HSSFCellStyle createCellStyle(HSSFWorkbook workbook, short fontsize,boolean flag,boolean flag1) {
            // TODO Auto-generated method stub
            HSSFCellStyle style = workbook.createCellStyle();
            //是否水平居中
            if(flag1){
                style.setAlignment(HSSFCellStyle.ALIGN_CENTER);//水平居中
            }
           
            style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);//垂直居中
            //创建字体
            HSSFFont font = workbook.createFont();
            //是否加粗字体
            if(flag){
                font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
            }
            font.setFontHeightInPoints(fontsize);
            //加载字体
            style.setFont(font);
            return style;
        }
    }


    ④main方法
    package org;
     
    import java.io.FileOutputStream;
    import java.util.ArrayList;
    import java.util.List;
     
    public class MainOut {
        public static void main(String args[]){
            //模拟部分数据
            List<WorkSheetDetail> detail = new ArrayList<WorkSheetDetail>();
     
            WorkSheetDetail d1 =new WorkSheetDetail("23",23f,43,34,243f,54f,"34");
            WorkSheetDetail d2 =new WorkSheetDetail("23",23f,43,34,243f,54f,"34");
            WorkSheetDetail d3 =new WorkSheetDetail("23",23f,43,34,243f,54f,"34");
            WorkSheetDetail d4 =new WorkSheetDetail("23",23f,43,34,243f,54f,"34");
            WorkSheetDetail d5 =new WorkSheetDetail("23",23f,43,34,243f,54f,"34");
            detail.add(d1);
            detail.add(d2);
            detail.add(d3);
            detail.add(d4);
            detail.add(d5);
            try  
            {  
                FileOutputStream fout = new FileOutputStream("E:/students.xls");
                new ExportExcel().getValue(detail, fout);
                fout.close();  
            }  
            catch (Exception e)  
            {  
                e.printStackTrace();  
            }  
     
        }
    }

    ⑤截图

     

    --------------------- 
    作者:datangxiajun 
    来源:CSDN 
    原文:https://blog.csdn.net/datangxiajun/article/details/78308979 
    版权声明:本文为博主原创文章,转载请附上博文链接!

    展开全文
  • 1、问题背景利用POI导出Excel表格,在导出的过程中涉及到双表头,即需要合并单元格2、实现源码/**** @Project:Report* @Title:MergeCell.java* @Package:com.you.excel* @Description:* @Author:YouHaiDong* @Date:...

    1、问题背景

    利用POI导出Excel表格,在导出的过程中涉及到双表头,即需要合并单元格

    2、实现源码

    /**

    *

    * @Project:Report

    * @Title:MergeCell.java

    * @Package:com.you.excel

    * @Description:

    * @Author:YouHaiDong

    * @Date:2015年11月4日 下午2:36:46

    * @Version:

    */

    package com.you.excel;

    import java.io.FileOutputStream;

    import org.apache.poi.hssf.usermodel.HSSFCell;

    import org.apache.poi.hssf.usermodel.HSSFRichTextString;

    import org.apache.poi.hssf.usermodel.HSSFRow;

    import org.apache.poi.hssf.usermodel.HSSFSheet;

    import org.apache.poi.hssf.usermodel.HSSFWorkbook;

    import org.apache.poi.hssf.util.Region;

    /**

    *

    合并单元格

    * @ClassName:MergeCell

    * @Description:

    * @Author:YouHaiDong

    * @Date:2015年11月4日 下午2:36:46

    *

    */

    public class MergeCell

    {

    /**

    * 合并单元格

    * @Title:MergeCell

    * @Description:

    * @param args

    * @Date:2015年11月4日 下午2:36:46

    * @return: void

    * @throws Exception

    */

    @SuppressWarnings({ "resource", "deprecation" })

    public static void main(String[] args) throws Exception

    {

    //创建workbook

    HSSFWorkbook workbook = new HSSFWorkbook();

    //创建sheet页

    HSSFSheet sheet = workbook.createSheet("学生表");

    //创建单元格

    HSSFRow row = sheet.createRow(0);

    HSSFCell c0 = row.createCell(0);

    c0.setCellValue(new HSSFRichTextString("学号"));

    HSSFCell c1 = row.createCell(1);

    c1.setCellValue(new HSSFRichTextString("姓名"));

    HSSFCell c2 = row.createCell(2);

    c2.setCellValue(new HSSFRichTextString("性别"));

    HSSFCell c3 = row.createCell(3);

    c3.setCellValue(new HSSFRichTextString("年龄"));

    HSSFCell c4 = row.createCell(4);

    c4.setCellValue(new HSSFRichTextString("2015年分数"));

    HSSFCell c5 = row.createCell(7);

    c5.setCellValue(new HSSFRichTextString("2014年分数"));

    HSSFRow row1 = sheet.createRow(1);

    HSSFCell c6 = row1.createCell(4);

    c6.setCellValue(new HSSFRichTextString("语文"));

    HSSFCell c7 = row1.createCell(5);

    c7.setCellValue(new HSSFRichTextString("数学"));

    HSSFCell c8 = row1.createCell(6);

    c8.setCellValue(new HSSFRichTextString("外语"));

    HSSFCell c9 = row1.createCell(7);

    c9.setCellValue(new HSSFRichTextString("语文"));

    HSSFCell c10 = row1.createCell(8);

    c10.setCellValue(new HSSFRichTextString("数学"));

    HSSFCell c11 = row1.createCell(9);

    c11.setCellValue(new HSSFRichTextString("外语"));

    Region region1 = new Region(0, (short)0, 1, (short)0);

    Region region2 = new Region(0, (short)1, 1, (short)1);

    Region region3 = new Region(0, (short)2, 1, (short)2);

    Region region4 = new Region(0, (short)3, 1, (short)3);

    Region region5 = new Region(0, (short)4, 0, (short)6);

    Region region6 = new Region(0, (short)7, 0, (short)9);

    sheet.addMergedRegion(region1);

    sheet.addMergedRegion(region2);

    sheet.addMergedRegion(region3);

    sheet.addMergedRegion(region4);

    sheet.addMergedRegion(region5);

    sheet.addMergedRegion(region6);

    FileOutputStream stream = new FileOutputStream("d:/student.xls");

    workbook.write(stream);

    }

    }

    3、实现结果

    1adb802c9586d3cd9bd3aa71d9571680.png

    展开全文
  • Java的技术体系主要由支撑Java程序运行的虚拟机,提供各开发领域接口支持的Java,Java编程语言及许多第三方Jvav框架构成。 其中,以Java的虚拟器为今天的着重点 以下是我整理收藏的一些JVM大厂面试经典问题与相应答案...
  • 主要给大家介绍了关于java实现合并单元格的同时并导出excel的相关资料,文中先进行了简单的介绍,之后给出了详细的示例代码,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
  • /***导出Excel表格**@paramallList要导出的数据*@paramheadArrjson键值对*@paramtitleArrexcel标题*@paramtitleExcel名字*@parammergeColumn要合并的列*/publicvoidexportExcel(JSONArrayallList,String[]headA...
  • java导出excel合并单元格及设置

    千次阅读 2019-04-23 15:16:12
    功能是导出表格 package checkout_excel; import java.io.FileOutputStream; import java.util.ArrayList; import java.util.List; public class MainOut { public static void main(String args[]){ //...
  • Java导出excel单元格合并的方法

    千次阅读 2022-02-14 16:30:38
    Java导出execl合并单元格的方法 jxl.write相关jar //jxl.write相关jar //mergeCells(起行,起列,终行,终列) mergeCells(0, 0, 0, 0); //查了半天单元格合并,都不太对,我在这给大家合并一下,方法 //因为我这里只用...
  • if (deptRowEndIndex-1 >deptRowIndex) {//合并单元格 CellRangeAddress cellRange = new CellRangeAddress(deptRowIndex, deptRowEndIndex-1, (short) 1, (short) 1); sheet.addMergedRegion(cellRange);//为合并...
  • 1、引入maven依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>...2、此处我们以合并多行数据为例,效果如下: .
  • JAVA 导出Excel 单元格合并

    千次阅读 2022-02-15 18:28:11
    java 导出Excel 合并单元格
  • 首先,看一下期望达到的效果: ...import java.io.FileOutputStream; import java.util.ArrayList; import java.util.List; /** * Created with IntelliJ IDEA. * * @Auther: zp * @Date: 2021/05/25/18:1.
  • java导出excel合并单元格

    千次阅读 2018-12-31 13:17:32
    1、java导出excel用到POI所有jar包 ,大家可以直接到下面地址下载点击打开链接 2、导出excel的方法 package org; import java.io.FileOutputStream; import java.util.List; import org.apache.poi.hssf....
  • JAVA导出excel 动态合并单元格

    千次阅读 2021-04-28 11:17:16
    JAVA excel合并单元格原生poi 合并后的效果 直接上代码 (该方法为如果指定行的单元格里面的值一致则进行合并,直接粘贴使用即可) * * @param sheet * @param colIdx 合并的列 * @param startRow 起始行 * @...
  • 官方poi地址: ... ◎HSSFWorkbook一般用于Excel2003版及更早版本(扩展名为.xls)的导出。 ◎XSSFWorkbook一般用于Excel2007版(扩展名为.xlsx)的导出。 ◎SXSSFWorkbook一般用于大数据量的导出。 ...
  • 相信好多小伙伴都遇到导出excel的时候,要合并单元个 那么它来了 它来了,直接都可以使用 平行丝滑导出,难道不香吗? 话不多说,直接怼 import java.io.FileNotFoundException; import java.io.IOException; import...
  • POI 导出excel文件下拉框问题 1.https://blog.csdn.net/sdaujsj1/article/details/81004209 java导出Excel合并单元格 2https://blog.csdn.net/datangxiajun/article/details/78308979
  • 主要介绍了Java导出excel合并同一列中相同内容的行,需要的朋友可以参考下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,269
精华内容 2,507
关键字:

java导出excel合并单元格