jexcelapi学习笔记一

在实际WEB项目开发过程中,常常需要我们开发WEB报表的功能,下面我们就学习一下两种常用的处理Excel表格的开源解决方案:Apache POI和JExcelApi(Jxl)的基本应用。

首先我们学习Jxl的用法:

1.jExcelApi开发环境的基本配置

首先从网站上下载jExcelApi,可以从这个下载地址http://sourceforge.net/projects/jexcelapi/files/jexcelapi/下载。例如下载版本为2.6.12JExcelApi,下载下来的文件为:jexcelapi_2_6_12.zip,解压后文件目录如下图:



其中docs目录下是API参考文档,src目录下是整个JExcelAPi的源代码,jx1.jar这个文件就是JExcelAPi打包的类库文件,如果要在项目中使用JExcelAPi只需要把jx1.jar文件的路径加入classpath中或项目lib目录下,对jxl更详细的分析请见:

http://www.cnblogs.com/xd502djj/archive/2011/08/15/2139394.html

 

2. JXL特点: 

1) 读取Excel95,97,2000,2003的数据;
2) 读取和写入Excel97及以后版本的公式;
3) 生成Excel2000,2003格式的电子表格;
4) 支持对字体,数字,日期的格式化; 
5) 支持对单元格加阴影和加色彩; 
6) 修改存在的工作表;
7) 支持图片的创建;
8) 日志记录可以定制;

3.Jxl 局限性: 
JExcelApi不能够生成和读取图表的信息;
这个信息当图表被拷贝的时候仍然保存;
当增加一个图片到表中,仅仅PNG格式被支持。

 

4.生成简单的Excel文件的示例:

 

Java代码   收藏代码
  1. public static void createExcel(OutputStream os) throws IOException,  
  2.         RowsExceededException, WriteException  
  3. {  
  4.     // 创建工作区  
  5.     WritableWorkbook workbook = Workbook.createWorkbook(os);  
  6.     // 创建新的一页,sheet只能在工作簿中使用  
  7.     WritableSheet sheet = workbook.createSheet("test sheet1"0);  
  8.   
  9.     // 通过函数WritableFont()设置字体样式  
  10.     // 第一个参数表示所选字体  
  11.     // 第二个参数表示字体大小  
  12.     // 第三个参数表示粗体样式,有BOLD和NORMAL两种样式  
  13.     // 第四个参数表示是否斜体,此处true表示为斜体  
  14.     // 第五个参数表示下划线样式  
  15.     // 第六个参数表示颜色样式,此处为Red  
  16.     WritableFont wf = new WritableFont(WritableFont.TIMES, 18,  
  17.             WritableFont.BOLD, true, UnderlineStyle.NO_UNDERLINE,  
  18.             Colour.RED);  
  19.     CellFormat cf = new WritableCellFormat(wf);  
  20.     // 创建单元格即具体要显示的内容,new Label(0,0,"用户") 第一个参数是column 第二个参数是row  
  21.     // 第三个参数是content,第四个参数是可选项,为Label添加字体样式  
  22.     WritableCell employee = new Label(00"雇员", cf);  
  23.     // 通过sheet的addCell方法添加Label,注意一个cell/label只能使用一次addCell  
  24.     sheet.addCell(employee);  
  25.     WritableCell sex = new Label(10"性别");  
  26.     sheet.addCell(sex);  
  27.     // 将内容写到输出流中,然后关闭工作区,最后关闭输出流  
  28.     <span style="color: #ff0000;">workbook.write();  
  29.     workbook.close();</span>  
  30.     os.close();  
  31. }  

 其中红色部分非常重要,write()方法是用于生成一个Excel文档,close()方法则用于使生成的Excel文档有效,否则不调用close()的话将会导致生成的Excel文档在打开时提示“文件的格式与扩展名指定的格式不一致”,如下图:



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值