java操作Excel

// 创建Excel
    String destFileName = tableName + ".xls";//文件名

    response.setContentType("application/vnd.ms-excel");
    response.setHeader("Content-Disposition", "attachment; filename=".concat(String .valueOf(destFileName)));

    

WorkbookSettings wbs = new WorkbookSettings();
    WritableWorkbook w = Workbook.createWorkbook(response .getOutputStream(), wbs);//打开文件
    jxl.write.WritableSheet ws = w.createSheet("sheet0", 0);// // 生成名为“sheet0”的工作表,参数0表示这是第一页   

   // 在Label对象的构造子中指名单元格位置是第一列第一行(0,0)
   // 以及单元格内容为test
   Label label = new Label(0, 0, "test123");
  
   // 将定义好的单元格添加到工作表中
   sheet.addCell(label);

 

    // 字体设置
    WritableFont font = new WritableFont(WritableFont.createFont("楷体_GB2312"), 12, WritableFont.BOLD);

    WritableCellFormat format = new WritableCellFormat(font);
    format.setBackground(jxl.format.Colour.GRAY_25);
    format.setLocked(false);//单元格锁定
    format.setBorder(jxl.format.Border.ALL,
      jxl.format.BorderLineStyle.getStyle(1));
    format.setWrap(true);//设置自动换行
    // 字体设置结束


  // 单元格设置内容(以下表示,第i列,第1行)

方式1: 

   ExcelUtil.makeCellData(ws, i, 0, (String) map.get("BTF_TITLE"), ExcelUtil.LABEL_ALIGN_LEFT,ExcelUtil.BORDER_LINE_ALL, null, ExcelUtil.CELL_TYPE_LABEL,jxl.format.Colour.GRAY_25);
方式2:

     ws.addCell(new Label(i, 0, (String) map.get("BTF_TITLE"), format));

 

//最后写文件,关闭
  w.write();
  w.close();

 

 

//合并单元格
WritableSheet.mergeCells(int m,int n,int p,int q);
作用是从(m,n)到(p,q)的单元格全部合并,比如:
WritableSheet sheet=book.createSheet(“第一页”,0);
//合并第一列第一行到第六列第一行的所有单元格
sheet.mergeCells(0,0,5,0);
合并既可以是横向的,也可以是纵向的。合并后的单元格不能再次进行合并,否则会触发异常。

 

//操作图片
public static void write()throws Exception{
        WritableWorkbook wwb=Workbook.createWorkbook(new File("c:/1.xls"));
        WritableSheet ws=wwb.createSheet("Test Sheet 1",0);
        File file=new File("C://jbproject//PVS//WebRoot//weekhit//1109496996281.png");
        WritableImage image=new WritableImage(1, 4, 6, 18,file);
        ws.addImage(image);
        wwb.write();
        wwb.close();
    }

 

详细:http://dcbjavaeye.javaeye.com/blog/412032

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值