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 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具