java jxl excel 导入导出的 总结(建立超链接,以及目录sheet的索引)

最近项目要一个批量导出功能,而且要生成一个单独的sheet页,最后后面所有sheet的索引,并且可以点击进入连接。网上搜索了一下,找到一个方法,同时把相关的excel导入导出操作记录一下!以便以后使用!

简单先写一下目录的建立的主要代码,测试用的

List ls = new ArrayList();//报表名称列表
  ls.add("BB_BB03");
  ls.add("BB_BB05");
  ls.add("BB_BB06");

try {
   WritableWorkbook wb = Workbook.createWorkbook(new File("D:test1.xls"));
   WritableSheet ws1 = wb.createSheet("BB",1);//先建立后面的sheet最后再处理目录的sheet
   WritableSheet ws = wb.createSheet("目录",0);
   WritableFont wfc = new WritableFont(WritableFont.TIMES, 18, WritableFont.BOLD, true);
   WritableCellFormat wcfFC = new WritableCellFormat(wfc); 
   Label lb = new Label(0,0,"目录",wcfFC);//标题要字体
   ws.addCell(lb);
   for (int i=0;i<ls.size();i++){
    ws.addHyperlink(new WritableHyperlink(1,i+1,ls.get(i).toString(),ws1,0,0)); //关键的建立后面sheet连接的一句

   }

...

下面黏贴一下网上搜到的其他相关操作,以备后用!

应该是项目中图片的连接

String formu = "HYPERLINK(\"images\\"+picpath+"\",\"查看图片\")";

Formula formula =new Formula(12, i, formu);ws.addCell(formula);

 

excel的导入导出

JAVA EXCEL API简介 

Java Excel是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容、创建新的Excel文件、更新已经存在的Excel文件。使用该 API非Windows操作系统也可以通过纯Java应用来处理Excel数据表。因为是使用Java编写的,所以我们在Web应用中可以通过JSP、 Servlet来调用API实现对Excel数据表的访问。

现在发布的稳定版本是V2.0,提供以下功能: 

    * 从Excel 95、97、2000等格式的文件中读取数据; 
    * 读取Excel公式(可以读取Excel 97以后的公式); 
    * 生成Excel数据表(格式为Excel 97); 
    * 支持字体、数字、日期的格式化; 
    * 支持单元格的阴影操作,以及颜色操作; 
    * 修改已经存在的数据表; 

现在还不支持以下功能,但不久就会提供了: 

   1. 不能够读取图表信息; 
   2. 可以读,但是不能生成公式,任何类型公式最后的计算值都可以读出; 



应用示例 

1 从Excel文件读取数据表 

Java Excel API既可以从本地文件系统的一个文件(.xls),也可以从输入流中读取Excel数据表。读取Excel数据表的第一步是创建Workbook(术语:工作薄),下面的代码片段举例说明了应该如何操作:(完整代码见ExcelReading.java)

import java.io.*; 
                        import jxl.*; 
                        … … … … 
                        try 
                        { 
                        //构建Workbook对象, 只读Workbook对象 
                        //直接从本地文件创建Workbook 
                        //从输入流创建Workbook 
                        InputStream is = new FileInputStream(sourcefile); 
                        jxl.Workbook rwb = Workbook.getWorkbook(is); 
                        } 
                        catch (Exception e) 
                        { 
                        e.printStackTrace(); 
                        } 
                        


一旦创建了Workbook,我们就可以通过它来访问Excel Sheet(术语:工作表)。参考下面的代码片段: 

//获取第一张Sheet表 
                        Sheet rs = rwb.getSheet(0); 
                        


我们既可能通过Sheet的名称来访问它,也可以通过下标来访问它。如果通过下标来访问的话,要注意的一点是下标从0开始,就像数组一样。 

一旦得到了Sheet,我们就可以通过它来访问Excel Cell(术语:单元格)。参考下面的代码片段: 

//获取第一行,第一列的值 
              
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值