java jxl合并单元格_jxl生成Excel表格合并单元格工具类

废话不多说  直接上代码

工具类

package com.hoperun.ccca.common.util;

import java.io.File;

import java.io.OutputStream;

import java.util.HashMap;

import java.util.List;

import jxl.Workbook;

import jxl.write.Label;

import jxl.write.WritableSheet;

import jxl.write.WritableWorkbook;

/**

* @title ExcelManage.java

* @description

* @author zyy

*/

public class ExcelManage {

@SuppressWarnings("rawtypes")

public static void writeExcel(OutputStream os,List excelList)

{

try

{

/**

* 只能通过API提供的工厂方法来创建Workbook,而不能使用WritableWorkbook的构造函数,

* 因为类WritableWorkbook的构造函数为protected类型

* method(1)直接从目标文件中读取WritableWorkbook wwb =

* Workbook.createWorkbook(new File(targetfile));

* method(2)如下实例所示 将WritableWorkbook直接写入到输出流

*

*/

WritableWorkbook wwb = Workbook.createWorkbook(os);

// 创建Excel工作表 指定名称和位置

for(int i=0;i

{

ExcelModel eModel=(ExcelModel)excelList.get(i);

WritableSheet ws = wwb.createSheet(eModel.getSheetName(),i);

List ls=eModel.getContentList();

if(ls!=null)

{

for(int z=0;z

{

HashMap map=(HashMap)ls.get(z);

for(int y=1;y<=map.size();y++)

{

String cellContent=map.get(y+"").toString();

ws.addCell(new Label(y-1,z, cellContent));

}

}

}

}

wwb.write();

wwb.close();

}

catch(Exception e)

{

e.printStackTrace();

}

}

@SuppressWarnings("rawtypes")

public static void writeExcel(File file,List excelList)

{

try

{

/**

* 只能通过API提供的工厂方法来创建Workbook,而不能使用WritableWorkbook的构造函数,

* 因为类WritableWorkbook的构造函数为protected类型

* method(1)直接从目标文件中读取WritableWorkbook wwb =

* Workbook.createWorkbook(new File(targetfile));

* method(2)如下实例所示 将WritableWorkbook直接写入到输出流

*

*/

WritableWorkbook wwb = Workbook.createWorkbook(file);

// 创建Excel工作表 指定名称和位置

for(int i=0;i

{

ExcelModel eModel=(ExcelModel)excelList.get(i);

WritableSheet ws = wwb.createSheet(eModel.getSheetName(),i);

List ls=eModel.getContentList();

if(ls!=null)

{

for(int z=0;z

{

HashMap map=(HashMap)ls.get(z);

for(int y=1;y<=map.size();y++)//循环每一列的内容

{

String cellContent=map.get(y+"").toString();

ws.addCell(new Label(y-1,z, cellContent));

}

}

}

}

wwb.write();

wwb.close();

}

catch(Exception e)

{

e.printStackTrace();

}

}

@SuppressWarnings("rawtypes")

public static void writeTrial(File file,List excelList)

{

try

{

/**

* 只能通过API提供的工厂方法来创建Workbook,而不能使用WritableWorkbook的构造函数,

* 因为类WritableWorkbook的构造函数为protected类型

* method(1)直接从目标文件中读取WritableWorkbook wwb =

* Workbook.createWorkbook(new File(targetfile));

* method(2)如下实例所示 将WritableWorkbook直接写入到输出流

*

*/

WritableWorkbook wwb = Workbook.createWorkbook(file);

// 创建Excel工作表 指定名称和位置

for(int i=0;i

{

ExcelModel eModel=(ExcelModel)excelList.get(i);

WritableSheet ws = wwb.createSheet(eModel.getSheetName(),i);

List ls=eModel.getContentList();

if(ls!=null)

{

for(int z=0;z

{

HashMap map=(HashMap)ls.get(z);

for(int y=1;y<=map.size();y++)//循环每一列的内容

{

String cellContent=map.get(y+"").toString() == null ? "":map.get(y+"").toString();

ws.addCell(new Label(y-1,z, cellContent));

}

}

//合并单元格

ws.mergeCells(0, 0, 0, 1);//设置第一列、第一行和 第一列、第二行合并

ws.mergeCells(1, 0, 1, 1);//设置第二列、第一行和 第二列、第二行合并

ws.mergeCells(2, 0, 2, 1);//设置第三列、第一行和 第三列、第二行合并

ws.mergeCells(3, 0, 4, 0);//设置第四列、第一行和 第五列、第二行合并

}

}

wwb.write();

wwb.close();

}

catch(Exception e)

{

e.printStackTrace();

}

}

}

public class ExcelModel {

private String sheetName;    //工作表名称

private List contentList;   //工作表

public List getContentList() {

return contentList;

}

public void setContentList(List contentList) {

this.contentList = contentList;

}

public String getSheetName() {

return sheetName;

}

public void setSheetName(String sheetName) {

this.sheetName = sheetName;

}

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值