• Java导出Excel合并单元格


    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;
    
    /**
     * <p>合并单元格</p>
     * @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、实现结果


  • 相关阅读:
    第七次作业--项目需求分析(团队)
    第六次作业--结对编程第二次
    第四次作业--项目选题报告
    alpha冲刺4
    alpha冲刺3
    Alpha 冲刺报告2
    Alpha 冲刺报告
    项目需求分析答辩总结
    项目UML设计(团队)
    项目选题报告答辩总结
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13314336.html
Copyright © 2020-2023  润新知