Java读取Excel表格中的数据

简介: Java读取Excel表格中的数据

前言


本文主要讲述如何在Java中读取Excel表中的数据并在控制台输出,实现工具为Eclipse

提示:以下是本篇文章正文内容,下面案例可供参考

一、添加jar包文件


描述:在Java中导入导出Excel文件要引入jxl.jar包。这套API是纯Java的,并不依赖Windows系统,即使运行在Linux操作系统下也同样能够正确的处理Excel文件。

jar包获取地址: 链接:https://pan.baidu.com/s/1bzyVzo_8Xc_7IFIFavYmyg

提取码:xhzy

1.在Eclipse工程下新建lib文件夹


image.png

2.复制jar包


image.png

3.将jar包粘贴到Eclipse中


image.png

此时Eclipse中jar包文件是这个样子,说明并没有导入jar包,接下来进行配置构建路径

4.配置构建路径


鼠标移动到工程名处,右击Build Path > Configure Build Path…

image.png

类路径下添加外部jar包

image.png

选中Java项目工程中的lib文件夹下的jxl.jar包,点击确定应用并关闭

image.png

当jar包变成这个样子以后就说明该Java项目工程中成功添加了该jar包

image.png

二、案例代码


在桌面上创建了后缀名为.xls的表格文件作为本案例的测试表格,表格内容如下所示:

image.png

image.png

1.新建类


在Java项目工程中我创建了一个只包含有main方法的类

代码如下(示例):

packagecom.dreamfly;
publicclassExcelImport {
publicstaticvoidmain(String[] args) {
    }
}

2.获取Excel文件


代码如下(示例):

Filefile=newFile("C:\\Users\\飞翔的兰\\Desktop\\student.xls");
Workbookwb=Workbook.getWorkbook(file);

通过File类的构造方法将给定路径名字符串转换为抽象路径名来创建一个新的File实例

再通过Workbook接口中的getWorkbook方法读取Excel表格(后缀名只能为.xls

查看Excel文件位置的方法:

找到桌面上的Excel文件右击,选择属性

image.png

image.png

3.获取指定的sheet页码


在导入Excel表格后接着就是获取要读取表格哪一页的的数据

Sheet sheet = wb.getSheet("Sheet1");

这里是通过指定的Sheet页的名字获取指定的Sheet页也可以通过索引获取Sheet页


4.获取单元格数据


通过两个for循环获取单元格的数据,外循环控制行内循环控制列

for (inti=0; i<sheet.getRows(); i++) {
for (intj=0; j<sheet.getColumns(); j++) {
Cellcell=sheet.getCell(j,i);
System.out.print(cell.getContents()+"\t");      //\t代表tab键的字符            }
System.out.println();               //设置每查询完一行就换行        }

代码中的getCell方法获取的是指定单元格对象,参数是column(列)row(行)行和列的索引均从0开始

for循环当中的控制条件可以利用getRows方法和getColumns方法来获取Excel表格中存在数据的行数和列数

5.关闭工作簿资源


wb.close();

三、运行结果:


image.png

四、案例源码


packagecom.dreamfly;
importjava.io.File;
importjxl.Cell;
importjxl.Sheet;
importjxl.Workbook;
publicclassExcelImport {
publicstaticvoidmain(String[] args) throwsException {
//Excel办公,以表格形式存在//如何实现:1.fastExcel 2.jxl解析(第三方) 3.poi方式(第三方)//通过jxl方式解析Excel步骤如下://1. 导入jxl的jar包//2. 获取到Excel文件Filefile=newFile("C:\\Users\\飞翔的兰\\Desktop\\student.xls");
Workbookwb=Workbook.getWorkbook(file);
//3. 获取指定的sheet页码   通过指定的Sheet页的名字获取指定的Sheet页,也可以通过索引获取SheetSheetsheet=wb.getSheet("Sheet1");
//4. 获取指定的单元格的数据  通过getCell方法获取指定单元格对象,参数是column,row,索引从0开始//      Cell cell = sheet.getCell(0,0);//      System.out.println(cell.getContents());//4.1 循环获取指定的行和列的单元格的值     外循环控制行,内循环控制列for (inti=0; i<sheet.getRows(); i++) {
for (intj=0; j<sheet.getColumns(); j++) {
Cellcell=sheet.getCell(j,i);
System.out.print(cell.getContents()+"\t");      //\t代表tab键的字符            }
System.out.println();               //设置每查询完一行就换行        }
wb.close();    //将工作簿的资源关闭    }
}
相关文章
|
17天前
|
数据采集 数据可视化 数据挖掘
利用Python自动化处理Excel数据:从基础到进阶####
本文旨在为读者提供一个全面的指南,通过Python编程语言实现Excel数据的自动化处理。无论你是初学者还是有经验的开发者,本文都将帮助你掌握Pandas和openpyxl这两个强大的库,从而提升数据处理的效率和准确性。我们将从环境设置开始,逐步深入到数据读取、清洗、分析和可视化等各个环节,最终实现一个实际的自动化项目案例。 ####
|
14天前
|
前端开发 JavaScript Java
java常用数据判空、比较和类型转换
本文介绍了Java开发中常见的数据处理技巧,包括数据判空、数据比较和类型转换。详细讲解了字符串、Integer、对象、List、Map、Set及数组的判空方法,推荐使用工具类如StringUtils、Objects等。同时,讨论了基本数据类型与引用数据类型的比较方法,以及自动类型转换和强制类型转换的规则。最后,提供了数值类型与字符串互相转换的具体示例。
|
21天前
|
JSON Java 程序员
Java|如何用一个统一结构接收成员名称不固定的数据
本文介绍了一种 Java 中如何用一个统一结构接收成员名称不固定的数据的方法。
24 3
|
1月前
|
Java BI API
Java Excel报表生成:JXLS库的高效应用
在Java应用开发中,经常需要将数据导出到Excel文件中,以便于数据的分析和共享。JXLS库是一个强大的工具,它基于Apache POI,提供了一种简单而高效的方式来生成Excel报表。本文将详细介绍JXLS库的使用方法和技巧,帮助你快速掌握Java中的Excel导出功能。
69 6
|
1月前
|
Java 程序员 容器
Java中的变量和常量:数据的‘小盒子’和‘铁盒子’有啥不一样?
在Java中,变量是一个可以随时改变的数据容器,类似于一个可以反复打开的小盒子。定义变量时需指定数据类型和名称。例如:`int age = 25;` 表示定义一个整数类型的变量 `age`,初始值为25。 常量则是不可改变的数据容器,类似于一个锁死的铁盒子,定义时使用 `final` 关键字。例如:`final int MAX_SPEED = 120;` 表示定义一个名为 `MAX_SPEED` 的常量,值为120,且不能修改。 变量和常量的主要区别在于变量的数据可以随时修改,而常量的数据一旦确定就不能改变。常量主要用于防止意外修改、提高代码可读性和便于维护。
|
1月前
|
存储 缓存 安全
在 Java 编程中,创建临时文件用于存储临时数据或进行临时操作非常常见
在 Java 编程中,创建临时文件用于存储临时数据或进行临时操作非常常见。本文介绍了使用 `File.createTempFile` 方法和自定义创建临时文件的两种方式,详细探讨了它们的使用场景和注意事项,包括数据缓存、文件上传下载和日志记录等。强调了清理临时文件、确保文件名唯一性和合理设置文件权限的重要性。
70 2
|
1月前
|
Java
Java 8 引入的 Streams 功能强大,提供了一种简洁高效的处理数据集合的方式
Java 8 引入的 Streams 功能强大,提供了一种简洁高效的处理数据集合的方式。本文介绍了 Streams 的基本概念和使用方法,包括创建 Streams、中间操作和终端操作,并通过多个案例详细解析了过滤、映射、归并、排序、分组和并行处理等操作,帮助读者更好地理解和掌握这一重要特性。
30 2
|
1月前
|
SQL 数据可视化 数据挖掘
想让Excel表格设计更美观?试试这几款好用工具!
Excel表格设计在项目管理和数据分析中至关重要。本文推荐四款辅助工具:板栗看板、Excel自动图表助手、Think-Cell Chart 和 Power BI,分别在任务管理、图表生成、数据可视化等方面表现突出,帮助你设计出更专业、美观的表格。
68 2
|
1月前
|
存储 分布式计算 Java
存算分离与计算向数据移动:深度解析与Java实现
【11月更文挑战第10天】随着大数据时代的到来,数据量的激增给传统的数据处理架构带来了巨大的挑战。传统的“存算一体”架构,即计算资源与存储资源紧密耦合,在处理海量数据时逐渐显露出其局限性。为了应对这些挑战,存算分离(Disaggregated Storage and Compute Architecture)和计算向数据移动(Compute Moves to Data)两种架构应运而生,成为大数据处理领域的热门技术。
57 2