生成Excel

package com.zzsb.core.utils;

import java.io.File;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

import jxl.Workbook;
import jxl.write.Label;
import jxl.write.Number;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;

 

   将List<Map>格式的数据集转换为execl
   @param title execl sheet的名字
   @param file 生成execl后存放的路径
   @param list 
 public class ExeclUtil {

 
 public static void list2Execl(String title, File file, List<Map> list) {
  try {
   WritableWorkbook book = Workbook.createWorkbook(file);
   WritableSheet sheet = book.createSheet(title, 0);
   
   if (list == null || list.size() == 0) {
    throw new RuntimeException("传入的list为null或空");
   }
   Map keyMap = list.get(0);
   
   Iterator iterator = keyMap.keySet().iterator();
   String[] keys = new String[keyMap.keySet().size()];
   int i=0;
   while (iterator.hasNext()) {
    String key = ConvertUtil.obj2Str(iterator.next());
    Label cell = new Label(i,0,key);
    sheet.addCell(cell);
    keys[i] = key;
    i++;
   }
   int rowIndex = 1;
   int columnIndex = 0;
   for (Map map : list) {
    for (String key : keys) {
     Label cell = new Label(columnIndex,rowIndex,ConvertUtil.obj2Str(map.get(key)));
     sheet.addCell(cell);
     columnIndex ++ ;
    }
    columnIndex = 0;
    rowIndex ++ ;
   }
   book.write();
   book.close();
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

jarry.liu

如果对您有帮助,鼓励下博主吧

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

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

打赏作者

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

抵扣说明:

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

余额充值