java jxl 高级应用(合并单元格)

Java代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
package com.kaixiang.dmas.helper;
 
import java.io.File;
import java.io.IOException;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.UUID;
 
import jxl.Workbook;
import jxl.format.UnderlineStyle;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableHyperlink;
import jxl.write.WritableImage;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
 
public class TestExl {
 
     public static void main(String args[]) throws IOException,
             RowsExceededException, WriteException {
         
         // a, 计算路径
         SimpleDateFormat sdf = new SimpleDateFormat( "/yyyy-MM-dd/" );
         String datePath = sdf.format( new Date());
         datePath = "中国石油西部管道输气量交接电子文档" + datePath;
         String uuidFileName = UUID.randomUUID().toString();
 
         // 创建文件夹
         File dir = new File(Globals.fielImportPath + datePath);
 
         if (!dir.exists()) {
             dir.mkdirs();
         }
 
         String path = Globals.fielImportPath + datePath + uuidFileName + "."
                 + "xls" ;
         
 
         WritableWorkbook book = Workbook.createWorkbook( new File(path)); // 第一步
 
         /**
          * 定义与设置Sheet
          */
         WritableSheet sheet = book.createSheet( "sheet" , 0 ); // 创建Sheet
         sheet.setColumnView( 0 , 30 ); // 设置列的宽度
         sheet.setColumnView( 1 , 30 ); // 设置列的宽度
         sheet.setColumnView( 2 , 30 ); // 设置列的宽度
         sheet.setColumnView( 3 , 80 ); // 设置列的宽度
         sheet.setRowView( 6 , 1000 ); // 设置行的高度
         sheet.setRowView( 4 , 1000 ); // 设置行的高度
         sheet.setRowView( 5 , 1000 ); // 设置行的高度
 
         /**
          * 定义单元格样式
          */
         WritableFont wf = new WritableFont(WritableFont.ARIAL, 15 ,
                 WritableFont.BOLD, false , UnderlineStyle.NO_UNDERLINE,
                 jxl.format.Colour.CORAL); // 定义格式 字体 下划线 斜体 粗体 颜色
     
         WritableCellFormat wcf = new WritableCellFormat(wf); // 单元格定义
         wcf.setBackground(jxl.format.Colour.BLACK); // 设置单元格的背景颜色
         wcf.setAlignment(jxl.format.Alignment.CENTRE); // 设置对齐方式
 
         /**
          * 使用样式的单元格
          */
         sheet.addCell( new Label( 0 , 0 , "邮箱" , wcf)); // 普通的带有定义格式的单元格
         sheet.addCell( new Label( 1 , 0 , "动作" , wcf));
         sheet.addCell( new Label( 2 , 0 , "时间" , wcf));
 
         sheet.addCell( new Label( 0 , 1 , "nilpower@sina.com" ));
         sheet.addCell( new Label( 1 , 1 , "action" ));
         sheet.addCell( new Label( 2 , 1 , "time" ));
 
         /**
          * excel合并单元格
          */
         sheet.addCell( new Label( 4 , 0 , "合并单元格" , wcf)); // 合并单元格
 
         sheet.addCell( new Label( 4 , 1 , "测试1" ));
         sheet.addCell( new Label( 5 , 1 , "测试2" ));
         sheet.addCell( new Label( 6 , 1 , "测试3" ));
 
         sheet.mergeCells( 4 , 0 , 6 , 0 ); // 合并单元格
 
         /**
          * excel图片
          */
         sheet.addCell( new Label( 0 , 3 , "展示图片 jxl只支持png格式的" , wcf)); // 展示图片标题
         sheet.mergeCells( 0 , 3 , 3 , 3 ); // 合并图片标题单元格
 
         File file = new File( "d://123.png" ); // 获得图片
         WritableImage image = new WritableImage( 0 , 4 , 3 , 3 , file); // 设置图片显示位置
         // 4,4代表图片的高和宽占4个单元格
 
         sheet.addImage(image); // 加载图片
 
         /**
          * excel链接
          */
         sheet.addCell( new Label( 0 , 8 , "excel链接测试" , wcf)); // 链接标题
         sheet.mergeCells( 0 , 8 , 2 , 8 );
         WritableHyperlink link = new WritableHyperlink( 0 , 9 , new URL(
                 "http://www.baidu.com" ));
         link.setDescription( "链接使用 链接到NilPower" );
         sheet.mergeCells( 0 , 9 , 1 , 9 );
         sheet.addHyperlink(link);
 
         book.write();
         book.close();
     }
 
}
描述:合并单元格,字体,图片、、、、、、
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值