专栏首页Hongtenjava的jxl技术导入Excel

java的jxl技术导入Excel

项目结构:

http://www.cnblogs.com/hongten/gallery/image/112177.html

在项目中我们看到Reference Libraries中的jxl.jar包,它是我们自己外部引入的包。

运行结果:

http://www.cnblogs.com/hongten/gallery/image/112178.html

ExcelHandle.java

  1 /**
  2  * 
  3  */
  4 package com.b510;
  5 
  6 import java.io.File;
  7 
  8 import jxl.Workbook;
  9 import jxl.format.Border;
 10 import jxl.format.BorderLineStyle;
 11 import jxl.format.Colour;
 12 import jxl.write.Label;
 13 import jxl.write.WritableCellFormat;
 14 import jxl.write.WritableFont;
 15 import jxl.write.WritableSheet;
 16 import jxl.write.WritableWorkbook;
 17 
 18 /**
 19  * 
 20  * @author XHW
 21  * 
 22  * @date 2012-2-29
 23  * 
 24  */
 25 public class ExcelHandle {
 26 
 27     /**
 28      * @param args
 29 */
 30     public static void main(String[] args) {
 31         ExcelHandle excelHandle = new ExcelHandle();
 32         excelHandle.writeExcel();
 33 
 34     }
 35 
 36     /**
 37      * 写入Excel
 38      * 
 39 */
 40     public void writeExcel() {
 41         try {
 42             //写入到那个Excel文件 如:c:\\hello.xls,或者hello.xls(这个是在项目的根目录下)
 43             WritableWorkbook wwb = Workbook
 44                     .createWorkbook(new File("hello.xls"));
 45             // 创建Excel工作表 指定名称和位置
 46             WritableSheet ws = wwb.createSheet("Test Sheet 1", 0);
 47             // 设置表格的列宽度
 48             ws.setColumnView(0, 14);//第一列宽14
 49             ws.setColumnView(1, 12);
 50             ws.setColumnView(2, 25);
 51             ws.setColumnView(3, 20);
 52             ws.setColumnView(4, 12);
 53             ws.setColumnView(5, 9);
 54             ws.setColumnView(6, 12);//第7列宽12
 55 
 56 // **************往工作表中添加数据*****************
 57 
 58 //定义字体格式:字体为:微软雅黑,24号子,加粗
 59             WritableFont titleFont = new WritableFont(WritableFont
 60                     .createFont("微软雅黑"), 24, WritableFont.NO_BOLD);
 61             WritableFont contentFont = new WritableFont(WritableFont
 62                     .createFont("楷体 _GB2312"), 12, WritableFont.NO_BOLD);
 63             
 64             WritableCellFormat titleFormat = new WritableCellFormat(titleFont);
 65             WritableCellFormat contentFormat = new WritableCellFormat(
 66                     contentFont);
 67             WritableCellFormat contentFormat2 = new WritableCellFormat(
 68                     contentFont);
 69 
 70             contentFormat.setBorder(Border.ALL, BorderLineStyle.THIN,
 71                     Colour.BLACK);
 72             //设置格式居中对齐
 73             titleFormat.setAlignment(jxl.format.Alignment.CENTRE);
 74             contentFormat2.setAlignment(jxl.format.Alignment.CENTRE);
 75 
 76             // ***************将定义好的单元格添加到工作表中*****************
 77             ws.mergeCells(0, 0, 6, 0);// 合并单元格A-G共7列
 78             ws.addCell(new Label(0, 0, "广州XXX大学2009级研究生课程考试成绩册", titleFormat));
 79             ws.addCell(new Label(0, 1, "课程名称", contentFormat2));
 80             ws.mergeCells(1, 1, 6, 1);// 合并单元格B-G共6列
 81             ws.addCell(new Label(1, 1, "大学数学", contentFormat2));
 82             ws.addCell(new Label(0, 2, "院所教研室", contentFormat2));
 83             ws.mergeCells(1, 2, 6, 2);// 合并单元格B-G共6列
 84             ws.addCell(new Label(0, 3, "填表人", contentFormat2));
 85             ws.addCell(new Label(2, 3, "教研室负责人", contentFormat2));
 86 
 87             String th[] = { "学号", "姓名", "学院", "平时成绩", "期末成绩", "总成绩", "补考成绩" };
 88             for (int i = 0; i < 7; i++) {
 89                 ws.addCell(new Label(i, 4, th[i], contentFormat2));
 90             }
 91             //这里我们可以从数据库里面查询数据,然后在这里获取数据
 92             int xh = 200901;
 93             String xm = "王佳佳";
 94             String xy = "XXX信息技术学院";
 95             String space = " ";
 96             int cj = 50;
 97             String bk = "补 80";
 98             //向Excel中插入数据
 99             for (int j = 5; j < 10; j++) {
100                 ws.addCell(new Label(0, j, "" + xh + j + "", contentFormat));
101                 ws.addCell(new Label(1, j, xm+j , contentFormat));
102                 ws.addCell(new Label(2, j,  xy , contentFormat));
103                 ws.addCell(new Label(3, j, space , contentFormat));
104                 ws.addCell(new Label(4, j, space, contentFormat));
105                 ws.addCell(new Label(5, j, "" + cj + j + "", contentFormat));
106                 ws.addCell(new Label(6, j, "" + bk + "", contentFormat));
107             }
108             // 写入工作表完毕,关闭流
109             wwb.write();
110             wwb.close();
111         } catch (Exception e) {
112             e.printStackTrace();
113         }
114     }
115     
116     
117     
118 }

java的poi技术读取和导入Excel:

http://www.cnblogs.com/hongten/archive/2012/02/22/java2poi.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Jxl 简单运用 Excel创建,插入数据,图片,更新数据,

    Hongten
  • java编程_socket_套接字_网络编程_简易的GUI多线程聊天程序

    ===============================================================

    Hongten
  • lucene in action_index and search

    你可以到:http://lucene.apache.org/ 了解更新,更全的关于lucene的信息。

    Hongten
  • WebApiThrottle限流框架使用手册

    阅读目录: 介绍 基于IP全局限流 基于IP的端点限流 基于IP和客户端key的端点限流 IP和客户端key的白名单 IP和客户端key自定义限制频率 端点自定...

    逸鹏
  • springboot 默认日志配置源码

    路过君
  • 自己动手写事件总线(EventBus)

    Android中存在各种通信场景,如`Activity`之间的跳转,`Activity`与`Fragment`以及其他组件之间的交互,以及在某个耗时操作(如请求...

    达文西
  • C++20草案中的宇宙飞船运算符(<=>,spaceship operator)

    宇宙飞船运算符(hh)形式如lhs<=>rhs。 比如a与b是整型,那么a<=>b返回std::strong_ordering类型的纯右值(prvalue,不...

    racaljk
  • 全文检索工具Lucene入门教程

    Apache Lucene 是完全用Java编写的高性能,功能齐全的,全文检索引擎工具包,通过lucene可以让程序员快速开发一个全文检索功能。

    AlbertYang
  • 【小家Spring】Spring MVC容器的web九大组件之---HandlerAdapter源码详解---HttpMessageConverter的匹配规则(选择原理)

    在前一篇文章: 【小家Spring】Spring MVC容器的web九大组件之—HandlerAdapter源码详解—HttpMessageConverter...

    YourBatman
  • Android中延时任务与定时任务

    AndroidL开始repeat的周期必须大于60秒 所以短周期循环执行不建议使用

    剑行者

扫码关注云+社区

领取腾讯云代金券