1 | package test; |
02 |
03 | // 生成Excel的类 |
04 | import java.io.File; |
05 |
06 | import jxl.Workbook; |
07 | import jxl.write.Label; |
08 | import jxl.write.WritableSheet; |
09 | import jxl.write.WritableWorkbook; |
10 |
11 | public class CreateExcel { |
12 | public static void main(String args[]) { |
13 | try { |
14 | // 打开文件 |
15 | WritableWorkbook book = Workbook.createWorkbook( new File( " test.xls " )); |
16 | // 生成名为“第一页”的工作表,参数0表示这是第一页 |
17 | WritableSheet sheet = book.createSheet( " 第一页 " , 0 ); |
18 | // 在Label对象的构造子中指名单元格位置是第一列第一行(0,0) |
19 | // 以及单元格内容为test |
20 | Label label = new Label( 0 , 0 , " test " ); |
21 |
22 | // 将定义好的单元格添加到工作表中 |
23 | sheet.addCell(label); |
24 |
25 | /**/ /* |
26 | * 生成一个保存数字的单元格 必须使用Number的完整包路径,否则有语法歧义 单元格位置是第二列,第一行,值为789.123 |
27 | */ |
28 | jxl.write.Number number = new jxl.write.Number( 1 , 0 , 555.12541 ); |
29 | sheet.addCell(number); |
30 |
31 | // 写入数据并关闭文件 |
32 | book.write(); |
33 | book.close(); |
34 |
35 | } catch (Exception e) { |
36 | System.out.println(e); |
37 | } |
38 | } |
39 | } |
[代码] 读取Excel (ReadExcel.java)
01 | package test; |
02 |
03 | // 读取Excel的类 |
04 | import java.io.File; |
05 |
06 | import jxl.Cell; |
07 | import jxl.Sheet; |
08 | import jxl.Workbook; |
09 |
10 | public class ReadExcel { |
11 | public static void main(String args[]) { |
12 | try { |
13 | Workbook book = Workbook.getWorkbook( new File( " test.xls " )); |
14 | // 获得第一个工作表对象 |
15 | Sheet sheet = book.getSheet( 0 ); |
16 | // 得到第一列第一行的单元格 |
17 | Cell cell1 = sheet.getCell( 0 , 0 ); |
18 | String result = cell1.getContents(); |
19 | System.out.println(result); |
20 | book.close(); |
21 | } catch (Exception e) { |
22 | System.out.println(e); |
23 | } |
24 | } |
25 | } |
[代码] 修改Excel (UpdateExcel.java)
01 | package test; |
02 |
03 | import java.io.File; |
04 |
05 | import jxl.Workbook; |
06 | import jxl.write.Label; |
07 | import jxl.write.WritableSheet; |
08 | import jxl.write.WritableWorkbook; |
09 |
10 | public class UpdateExcel { |
11 | public static void main(String args[]) { |
12 | try { |
13 | // Excel获得文件 |
14 | Workbook wb = Workbook.getWorkbook( new File( " test.xls " )); |
15 | // 打开一个文件的副本,并且指定数据写回到原文件 |
16 | WritableWorkbook book = Workbook.createWorkbook( new File( " test.xls " ), |
17 | wb); |
18 | // 添加一个工作表 |
19 | WritableSheet sheet = book.createSheet( " 第二页 " , 1 ); |
20 | sheet.addCell( new Label( 0 , 0 , " 第二页的测试数据 " )); |
21 | book.write(); |
22 | book.close(); |
23 | } catch (Exception e) { |
24 | System.out.println(e); |
25 | } |
26 | } |
27 | } |
[代码] 单元格格式化
1 | WritableFont font1 = |
2 | new WritableFont(WritableFont.TIMES, 16 ,WritableFont.BOLD); |
3 |
4 | WritableCellFormat format1 = new WritableCellFormat(font1); |
5 |
6 | Label label = new Label( 0 , 0 ,”data 4 test”,format1) |
[代码] 设置单元格对齐
1 | // 把水平对齐方式指定为居中 |
2 | format1.setAlignment(jxl.format.Alignment.CENTRE); |
3 |
4 | // 把垂直对齐方式指定为居中 |
5 | format1.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE); |
[代码] 合并单元格
1 | WritableSheet.mergeCells( int m, int n, int p, int q); |
2 |
3 | // 作用是从(m,n)到(p,q)的单元格全部合并,比如: |
4 | WritableSheet sheet = book.createSheet(“第一页”, 0 ); |
5 |
6 | // 合并第一列第一行到第六列第一行的所有单元格 |
7 | sheet.mergeCells( 0 , 0 , 5 , 0 ); |
[代码] 设置行高和列宽
01 | WritableSheet.setRowView( int i, int height); |
02 |
03 | // 作用是指定第i+1行的高度,比如: |
04 |
05 | // 将第一行的高度设为200 |
06 | sheet.setRowView( 0 , 200 ); |
07 |
08 | WritableSheet.setColumnView( int i, int width); |
09 |
10 | // 作用是指定第i+1列的宽度,比如: |
11 |
12 | // 将第一列的宽度设为30 |
13 | sheet.setColumnView( 0 , 30 ); |