jxl(Java Excel API) 使用方法 【1】

//   构建Workbook对象, 只读Workbook对象 
 //   直接从本地文档创建Workbook 
 //   从输入流创建Workbook

Workbook workbook = null;
    try {
      workbook = Workbook.getWorkbook(new File("D://output.xls"));
    } catch (Exception e) {
     e.printStackTrace();
    }

//返回正在使用的API的版本号,似乎是没什么太大的作用。  
    String apiVersion = workbook.getVersion();
    System.out.println(apiVersion);

//    获得工作薄(Workbook)中工作表(Sheet)的个数 
    int sheets = workbook.getNumberOfSheets(); 
    System.out.println(sheets);

//返回工作薄(Workbook)中工作表(Sheet)对象数组
    Sheet[] sheetStringArr = workbook.getSheets();
    for(int i=0;i<sheetStringArr.length;i++){
     System.out.println(sheetStringArr[i].getName()); //返回Sheet标题

System.out.println(sheetStringArr[i].getColumns());//Sheet页的总列数

System.out.println(sheetStringArr[i].getColumn(0));//Sheet页的某一列的数组

System.out.println(sheetStringArr[i].getRows());//Sheet页的总行数
System.out.println(sheetStringArr[i].getRow(0));//Sheet页的某一行的数组
    }

//获取第一张Sheet表 (术语:工作表)  ,两种方法
    Sheet sheet = workbook.getSheet(0);   //用下标获得第一页
    Sheet sheet = workbook.getSheet("TestCreateExcel");  //用名称获得第一页

// 返回第一行,第一列的值  (0  (第一个代表列)    ,0  (第二个代表行))
    Cell cell00=sheet.getCell(0, 0);
    System.out.println(cell00.getType());  //获得代表类的类型 (返回类的类型)
    System.out.println(cell00.getContents());//获得代表类的类型 (返回string)

//判断返回值类型

if(CellType.DATE==cell00.getType()){
     System.out.print("是日期类"+cell00.getType());//Date()
    }
    if(CellType.LABEL==cell00.getType()){
     System.out.print("是标签类"+cell00.getType());//Lable()
    }
    if(CellType.NUMBER==cell00.getType()){
     System.out.print("是日期类"+cell00.getType());//Number()
    }

 //关闭对象

workbook.close();

===============================================================

和读取Excel工作表相似,首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象,这里要注意的是,只能通过API提供的工厂方法来创建Workbook,而不能使用WritableWorkbook的构造函数,因为类WritableWorkbook的构造函数为protected类型。

//   构建Workbook对象, 只读Workbook对象 
//   Method 1:创建可写入的Excel工作薄
 
   File tempFile=new File("d:/output.xls");
   WritableWorkbook workbook = Workbook.createWorkbook(tempFile);

//   创建Excel工作表 (名称,位置)  ,该方法需要两个参数,一个是工作表的名称,另一个是工作表在工作薄中的位

//置
   WritableSheet sheet = workbook.createSheet("TestCreateExcel", 0);

//1.添加带有字型Formatting的对象 
   WritableFont headerFont = new WritableFont(WritableFont.ARIAL, 12, WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLUE);  //字体

//2.Format 
   WritableCellFormat headerFormat = new WritableCellFormat (headerFont);  //Format 一下

//3.加入标签  (列,行,"内容",字体)

jxl.write.Label labelCF = new jxl.write.Label(1, 0, "This is a Label Cell", headerFormat );

//4.加入工作表

sheet.addCell(labelCF );

//设置列的宽度  (那列,宽度数字)

sheet.setColumnView(1,20);

//写入Exel工作表 
wwb.write();

//关闭Excel工作薄对象 
wwb.close();

=================================================================================

3、拷贝、更新Excel工作薄

  接下来简要介绍一下如何更新一个已存在的工作薄,主要是下面二步操作,第一步是构造只读的Excel工作薄,第二步是利用已创建的Excel工作薄创建新的可写入的Excel工作薄,参考下面的代码片段:(完整代码见ExcelModifying.Java)

//创建只读的Excel工作薄的对象 
jxl.Workbook rw = jxl.Workbook.getWorkbook(new File(sourcefile));

//创建可写入的Excel工作薄对象 
jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File(targetfile), rw);

//读取第一张工作表 
jxl.write.WritableSheet ws = wwb.getSheet(0); //获得第一页

//获得第一个单元格对象 
jxl.write.WritableCell wc = ws.getWritableCell(0, 0); //获得第一列,第一行

//判断单元格的类型, 做出相应的转化 
if(wc.getType() == CellType.LABEL) 

Label l = (Label)wc; //(强转)得到单元格的Label()对象
l.setString("The value has been modified."); //重新设置值
}

//写入Excel对象 
wwb.write();

//关闭可写入的Excel对象 
wwb.close();

//关闭只读的Excel对象 
rw.close();

文章转载来自http://blog.csdn.net/lcz_ptr/article/details/7687657

时间: 2025-01-01 22:10:08

jxl(Java Excel API) 使用方法 【1】的相关文章

全面挖掘Java Excel API 使用方法

使用Windows操作系统的朋友对Excel(电子表格)一定不会陌生,但是要使用Java语言来操纵Excel文件并不是一件容易的事.在Web应用日益盛行的今天,通过Web来操作Excel文件的需求越来越强烈,目前较为流行的操作是在JSP或Servlet 中创建一个CSV (comma separated values)文件,并将这个文件以MIME,text/csv类型返回给浏览器,接着浏览器调用Excel并且显示CSV文件.这样只是说可以访问到Excel文件,但是还不能真正的操纵Excel文件,

Java Excel API简介

1.从Excel文件读取数据表 Java Excel API既可以从本地文件系统的一个文件(.xls),也可以从输入流中读取Excel数据表.读取Excel数据表的第一步是创建Workbook(术语:工作薄),下面的代码片段举例说明了应该如何操作:(完整代码见ExcelReading.java) import java.io.*; import jxl.*; … … … … try { //构建Workbook对象, 只读Workbook对象 //直接从本地文件创建Workbook //从输入流

JAVA Excel API学习案例

先贴代码吧,运行一下,看看效果,然后看看注释,再看看代码后面的基础介绍 创建一个新excel并写入数据: public static void myExcel2() throws IOException, WriteException { WritableWorkbook wwb = Workbook.createWorkbook(new File("F:" + File.separator + "myExcel1.xls")); // 创建excel表格中的一个s

自己封装的Java excel数据读取方法

package org.webdriver.autotest.data; import jxl.Workbook; import jxl.Sheet; import jxl.Cell; import java.util.ArrayList; import java.util.List; import java.io.File; import java.util.HashMap; public class read_case_data { static String sourcefile="..\

Java文件操作系列[2]——使用JXL操作Excel文件

由于java流无法实现对Excel文件的读写操作,因此在项目中经常利用第三方开源的组件来实现.支持Excel文件操作的第三方开源组件主要有Apache的POI和开源社区的JXL. 总体来说,二者的区别是:JXL较为轻量级,如果是对Excel文件的简单操作,建议使用JXL:POI的功能相当强大,但同时处理问题也相当的繁琐. 1.准备工作 [必需]下载JXL的jar包:jxl.jar [非必需]JXL API  (提取密码:zgqj) 2.一些必要的说明 主要是对Excel结构的说明: Excel后

jxl创建Excel文件java代码示例

记得要下载 并 导入 jxl.jar 包,免积分下载地址:http://download.csdn.net/detail/u010011052/7561041 package Test; import java.io.*; import jxl.*; import jxl.format.Colour; import jxl.write.*; public class JXLTest { private static WritableWorkbook book; private static Wr

Java中Excel导入功能实现、excel导入公共方法_POI -

这是一个思路希望能帮助到大家:如果大家有更好的解决方法希望分享出来 公司导入是这样做的 每个到导入的地方 @Override public List<DataImportMessage> materialDataImport2(byte[] fileBytes, String fileName) { //return DataImport(fileBytes, fileName, "inv_m"); File file = FileUtils.getFileFromByte

百度语音识别REST API使用方法(含JAVA代码)——不需要集成SDK的方法

上一篇文章http://blog.csdn.net/zpf8861/article/details/32322089已经介绍了百度语音识别REST API的使用步骤和功能介绍,这篇文章主要通过一个实例代码来展示如何使用该API. 本文代码为JAVA版,可以用于Android应用开发中,下面介绍其中重要的代码. 获得Token 其中apiKey和secretKey是从百度开放平台获得的,获得方法参看上一篇文章. private static void getToken() throws Excep

Java操作mongoDB2.6的常见API使用方法

对于mongoDB而言,学习方式和学习关系型数据库差不太多 開始都是学习怎样insert.find.update.remove,然后就是分页.排序.索引,再接着就是主从复制.副本集.分片等等 最后就是通过它提供的各个驱动(比方Java.PHP.node.js等等)来练习所谓的高级使用方法 另外:相对于Oracle有PLSQL Developer,MySQL有HeidiSQL mongoDB也不例外,它的图形化工具中有一款叫做mongoVUE的,我用的是1.5.3破解版(不是每15天就得改一次注冊