前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用JXL.jar实现JAVA对EXCEL的读写操作

使用JXL.jar实现JAVA对EXCEL的读写操作

作者头像
风骨散人Chiam
发布2020-10-28 11:03:57
1.1K0
发布2020-10-28 11:03:57
举报
文章被收录于专栏:CSDN旧文CSDN旧文

简介: jxl.jar是通过java操作excel表格的工具类库

jxl操作excel包括对象Workbook(工作簿),Sheet(工作表) ,Cell(单元格)。

一个excel就对应一个Workbook对象。

一个Workbook可以有多个Sheet对象。

一个Sheet对象可以有多个Cell对象。

读取Excel操作 通过Workbook,Sheet ,Cell这三个对象我们就可以实现Excel文件的读取工作。

读取步骤:​

1、 选取Excel文件得到工作薄

代码语言:javascript
复制
Workbook workbook = Workbook.getWorkbook(new File("myfile.xls"));

2、 选择工作表,通过Workbook的getSheet方法选择第一个工作表(从0开始)

代码语言:javascript
复制
Sheet sheet = workbook.getSheet(0);

3、 选择Cell

读取单元格

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

代码语言:javascript
复制
Cell c2 = sheet.getCell(2,1);

4、 读取信息​

通过Cell的getContents方法读取单元格的值

代码语言:javascript
复制
把单元格中的信息以字符的形式读取出来String stringc2 = c2.getContents();

Cell提供了一个getType方法

能够返回单元格的类型信息,同时JXL提供了一个CellType类用来预设Excel中的类型信息,而且JXL提供了一些Cell类的子类用来分别用来表示各种类型的单元格,如LabelCell,NumberCell,DateCell分别表示字符、数值、日期类型的单元格

5、释放资源:

代码语言:javascript
复制
workbook.close()
代码语言:javascript
复制
import java.io.File;
import java.io.IOException;

import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;

/**
 * jxl读excel
 * 
 * @author jianggujin
 * 
 */
public class JxlReadDemo
{
   public static void main(String[] args) throws BiffException, IOException
   {
      File xlsFile = new File("jxl.xls");
      // 获得工作簿对象
      Workbook workbook = Workbook.getWorkbook(xlsFile);
      // 获得所有工作表
      Sheet[] sheets = workbook.getSheets();
      // 遍历工作表
      if (sheets != null)
      {
         for (Sheet sheet : sheets)
         {
            // 获得行数
            int rows = sheet.getRows();
            // 获得列数
            int cols = sheet.getColumns();
            // 读取数据
            for (int row = 0; row < rows; row++)
            {
               for (int col = 0; col < cols; col++)
               {
                  System.out.printf("%10s", sheet.getCell(col, row)
                        .getContents());
               }
               System.out.println();
            }
         }
      }
      workbook.close();
   }
}

写入excel操作 通过WritableWorkbook,WritableSheet,Label这三个对象我们就可以实现Excel文件的插入工作。

1、 创建可写入的Excel工作薄

WritableWorkbook wwb = Workbook.createWorkbook(new File(“myfile.xls”));

2、创建工作表

WritableSheet ws = wwb.createSheet(“通讯录”, 0);

3、创建单元格

添加文本类单元格

Label labelC = new Label(0, 0, “This is a Label cell”);

ws.addCell(labelC);

4、写入到文件

wwb.write();// 写入数据

5、释放资源:

wwb.close();// 关闭文件

代码语言:javascript
复制
import java.io.File;
import java.io.IOException;

import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;

/**
 * jxl写Excel
 * 
 * @author jianggujin
 * 
 */
public class JxlWriteDemo
{
   public static void main(String[] args) throws IOException, WriteException
   {
      File xlsFile = new File("jxl.xls");
      // 创建一个工作簿
      WritableWorkbook workbook = Workbook.createWorkbook(xlsFile);
      // 创建一个工作表
      WritableSheet sheet = workbook.createSheet("sheet1", 0);
      for (int row = 0; row < 10; row++)
      {
         for (int col = 0; col < 10; col++)
         {
            // 向工作表中添加数据
            sheet.addCell(new Label(col, row, "data" + row + col));
         }
      }
      workbook.write();
      workbook.close();
   }
}

更新excel操作 1、创建只读的Excel表副本

Workbook workbook = Workbook.getWorkbook(file);

2、创建可写入的Excel工作薄

WritableWorkbook writableWorkbook = Workbook.createWorkbook(file, workbook);

3、其他操作与写入excel操作类似

在这里插入图片描述
在这里插入图片描述

写在最后: 我叫风骨散人,名字的意思是我多想可以不低头的自由生活,可现实却不是这样。家境贫寒,总得向这个世界低头,所以我一直在奋斗,想改变我的命运给亲人好的生活,希望同样被生活绑架的你可以通过自己的努力改变现状,深知成年人的世界里没有容易二字。目前是一名在校大学生,预计考研,热爱编程,热爱技术,喜欢分享,知识无界,希望我的分享可以帮到你! 如果有什么想看的,可以私信我,如果在能力范围内,我会发布相应的博文! 感谢大家的阅读!?你的点赞、收藏、关注是对我最大的鼓励!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-04-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档