jxl简单使用介绍

注意:

如果是Maven工程,那需要在pom.xml文件中加入jxl依赖,GAV坐标如下所示:

<dependency>
    <groupId>net.sourceforge.jexcelapi</groupId>
    <artifactId>jxl</artifactId>
    <version>2.6.12</version>
</dependency>

这只是一个参考version,当然可以使用其他的version

如果不是Maven工程,那需要加入相关的jar包依赖,相关地址是:
https://mvnrepository.com/artifact/net.sourceforge.jexcelapi/jxl

往Excel表中写数据:

import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import java.io.File;

public class jxlWriteExcel {

    public static void main(String[] args) {
        // 获取文件
        File file = new File("F:\\temp.xls");

        try {
            // 如果文件不存在,那就创建一个新的文件
            if (!file.exists()) {
                file.createNewFile();
            }

            // 创建可写入的Excel工作薄
            WritableWorkbook workbook = Workbook.createWorkbook(file);

            // 创建工作表,然后createSheet()方法中的两个参数分别是工作表名称和工作表在工作薄中的位置
            WritableSheet sheet = workbook.createSheet("sheet0", 0);

            // 创建单元格对象
            Label label = null;
            String[] title = {"id", "name", "age", "sex"};
            // 通过上面的数据,生成一行列名
            for (int i = 0; i < title.length; i++) {
                // 第一个参数:列;第二个参数:行;第三个参数:单元格内容
                label = new Label(i, 0, title[i]);
                // 把单元格添加到工作表中
                sheet.addCell(label);
            }

            // 循环插入每一行的数据,由于第一行已经被列名用了,所以i从1开始
            for (int i = 1; i <= 10; i++) {
                // 向单元格中插入数据,由于需要是字符串,所以在i后面添加了一个""变成字符串
                label = new Label(0, i, i + "");
                // 把单元格添加到表中
                sheet.addCell(label);
                label = new Label(1, i, "张三" + i + "号");
                sheet.addCell(label);
                label = new Label(2, i, 21 + i + "");
                sheet.addCell(label);
                // 如果i是偶数,性别为男,如果i是奇数,性别为女
                label = new Label(3, i, i % 2 == 0 ? "男" : "女");
                sheet.addCell(label);
            }

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

            // 关闭Excel工作薄对象,释放读取数据表的过程中所占用的内存空间
            workbook.close();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    
}

结果:
在这里插入图片描述

从Excel表中读数据:

import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import java.io.File;

public class jxlReadExcel {

    public static void main(String[] args) {

        try {
            //创建workbook工作薄,里面可以有多个工作表
            Workbook workbook = Workbook.getWorkbook(new File("f:\\temp.xls"));

            //获取第一张Sheet工作表
            Sheet sheet = workbook.getSheet(0);

            // 遍历所有行
            for (int i = 0; i < sheet.getRows(); i++) {
                // 遍历每一行的所有列
                for (int j = 0; j < sheet.getColumns(); j++) {
                    // get(j,i)其中j是列,i是行,该方法可以获得单元格
                    Cell cell = sheet.getCell(j, i);
                    // 通过cell.getContents()获取单元格中的内容,它可以将任何类型的Cell值都作为一个字符串返回
                    System.out.print(cell.getContents() + " ");
                }
                // 每一行后面加一个换行
                System.out.println();
            }

            // 关闭workbook工作薄,释放读取数据表的过程中所占用的内存空间
            workbook.close();

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}

结果:

id name age sex 
1 张三1222 张三2233 张三3244 张三4255 张三5266 张三6277 张三7288 张三8299 张三930
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值