zoukankan      html  css  js  c++  java
  • Java操作Excel

    JXL(Java Excel API)是一个用来动态读写Excel文件的开源框架,利用它可以在任何支持Java的操作系统上动态读写Excel文件。JXL的主页是:http://www.andykhan.com/jexcelapi/,可以在这里下载到它的最新的版本。

    你可以分别通过如下命令

    java -jar jxl.jar -xml test.xls
    java -jar jxl.jar -cvs test.xls

    以xml和cvs格式查看test.xls,这是因为JXL作者实现了一个用来演示的jxl.demo.Demo的类。

    当然我们使用JXL主要是用它来动态读写Excel文件。现在就来看看JXL在对Excel的读和写上都提供了那些支持。

    先来看看Excel文件中都有写上面对象

    1 文件对象 2工作簿对象 3 单元格对象。

    相应的在JXL中就有Workbook,Sheet ,Cell 。通过这三个对象我们就可以实现Excel文件的读取工作。

    我们先想想一下读取步骤,不管是什么样的Excel操作框架必定都要经历

    1选取Excel文件,2选择工作簿,3选择Cell,4读取信息。

    那么现在就可以看看JXL中这四步骤如何体现:

    //通过Workbook的静态方法getWorkbook选取Excel文件

    Workbook workbook = Workbook.getWorkbook(new File("myfile.xls"));

    //通过Workbook的getSheet方法选择第一个工作簿(从0开始)

    Sheet sheet = workbook.getSheet(0);

    //通过Sheet方法的getCell方法选择位置为C2的单元格(两个参数都从0开始)

    Cell c2 = sheet.getCell(2,1);

    //通过Cell的getContents方法把单元格中的信息以字符的形式读取出来

    String stringc2 = c2.getContents();

    可以看到正是刚才所说的四个步骤。

    我们都知道Excel单元格是有格式的,那么这些信息如何取得。

    Cell提供了一个getType方法能够返回单元格的类型信息,同时JXL提供了一个CellType类用来预设Excel中的类型信息,而且JXL提供了一些Cell类的子类用来分别用来表示各种类型的单元格,如LabelCell,NumberCell,DateCell分别表示字符、数值、日期类型的单元格。所以我们可以这样写:

    if (c2.getType() == CellType.NUMBER)
    {
    NumberCell nc = (NumberCell) c2;
    numberb2 = nc.getValue();
    }

    最后不要忘记关闭workbook以释放资源:

    workbook.close();

    Cell[] getRow(int row)

      获取某一行的所有单元格,返回的是单元格对象数组,示例子:

    jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
    jxl.Sheet rs = rwb.getSheet(0);
    Cell[] cell = rs.getRow(0);


     Cell getCell(int column, int row)

      获取指定单元格的对象引用,需要注意的是它的两个参数,第一个是列数,第二个是行数,这与通常的行、列组合有些不同。

    jxl.Workbook rwb = jxl.Workbook.getWorkbook(new File(sourcefile));
    jxl.Sheet rs = rwb.getSheet(0);
    Cell cell = rs.getCell(0, 0);

    现在总结一下:三个对象,四个步骤,注意格式。就可以轻松的从Excel文件中读取数据.

  • 相关阅读:
    一些集群操作以及问题查询
    .a 文件 和 so 文件
    KNN算法
    opendir函数和readdir函数内涵及用法
    tps 和 qps的区别
    Git使用(积累一些常用的命令)
    MurmurHash
    HyperLogLog
    MySQL主从不生效且无错误
    正则表达式与SQL
  • 原文地址:https://www.cnblogs.com/90zyh/p/2990899.html
Copyright © 2011-2022 走看看