使用Java读取Excel文件数据
通过编程方式读取Excel数据能实现数据导入、批量处理、数据比对和更新等任务的自动化。这不仅可以提高工作效率还能减少手动处理的错误风险。此外读取的Excel数据可以与其他系统进行交互或集成,实现数据的无缝传输和共享,满足特定项目的需求。本文将从以下三个方面介绍如何通过Java读取Excel文件中的数据。
- 读取某个单元格中的数据
- 读取指定单元格范围的数据
- 读取Excel工作表中的数据
安装免费Java库
操作Excel的免费Java库为 Free Spire.XLS for Java。该免费库在读写 .xls 格式的 Excel 文档时,有每个文档 5 个工作表,每个工作表 200 行的限制。但在读写 .xlsx 格式的 Excel 文档时是没有任何限制。
我么可以从下面链接下载产品包后手动引入jar包或者直接通过Maven仓库安装也可。
https://www.e-iceblue.cn/Downloads/Free-Spire-XLS-JAVA.html
读取Excel数据的核心方法:
要读取Excel单元格、单元格范围、或者Excel工作表中的数据,我们需要用到Free Spire.XLS for Java库提供的以下接口:
- Workbook类、Worksheet类:分别用于代表 Excel 工作簿、和工作簿中的工作表。
- CellRange类:用于代表某个特定的单元格或单元格区域。
- Worksheet.getCellRange(String name) 方法:获取某个单元格或单元格区域并返回 CellRange 对象。
- Worksheet.getAllocatedRange() 方法:获取工作表中包含数据的单元格区域,并返回 CellRange 对象。
- CellRange.getValue() 方法:获取单元格中的数值或文本值。(如果单元格有公式,该方法会返回公式而不是公式计算的结果)
输入文档:
Java代码示例
示例1 :使用Java 读取某个单元格的数据
import com.spire.xls.CellRange;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet; public class ReadData { public static void main(String[] args) { //创建Workbook对象
Workbook wb = new Workbook(); //加载Excel文件
wb.loadFromFile("货物.xlsx"); //获取第一张工作表
Worksheet sheet = wb.getWorksheets().get(0); //获取指定单元格
CellRange cell = sheet.getCellRange("A9"); //获取单元格数据
System.out.print("A9单元格的值为 " + cell.getValue());
}
}
读取A9单元格的值:

示例2:使用Java 读取某个单元格范围中的数据
import com.spire.xls.CellRange;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet; public class ReadData { public static void main(String[] args) { //创建Workbook对象
Workbook wb = new Workbook(); //加载Excel文件
wb.loadFromFile("货物.xlsx"); //获取第一张工作表
Worksheet sheet = wb.getWorksheets().get(0); //获取指定单元格区域
CellRange range = sheet.getCellRange("A11:F15"); //遍历行和列
for (int i = 0; i < range.getRows().length; i++) { for (int j = 0; j < range.getColumnCount(); j++) { //获取单元格数据
System.out.print(range.get(i + 11, j + 1).getValue() + " ");
}
System.out.println();
}
}
}
读取Excel单元格范围返回结果:

读取Excel工作表中的数据
import com.spire.xls.CellRange;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet; public class ReadData { public static void main(String[] args) { //创建Workbook对象
Workbook wb = new Workbook(); //加载Excel文件
wb.loadFromFile("货物.xlsx"); //获取第一张工作表
Worksheet sheet = wb.getWorksheets().get(0); //获取工作表中的数据区域
CellRange locatedRange = sheet.getAllocatedRange(); //遍历行和列
for (int i = 0; i < locatedRange.getRows().length; i++) { for (int j = 0; j < locatedRange.getColumnCount(); j++) { //获取单元格中的数据
System.out.print(locatedRange.get(i + 1, j + 1).getValue() + " ");
}
System.out.println();
}
}
}
读取Excel工作表数据返回结果:

通过以上示例, 我们可以通过Java编程语言来读取Excel文件,实现Excel数据的批量处理。Free Spire.XLS for Java 这个免费库还支持生成、转换、编辑、打印Excel文件等各种功能,有兴趣可前往其中文教程进行了解。
使用Java读取Excel文件数据的更多相关文章
- java读取excel文件数据导入mysql数据库
这是我来公司的第二周的一个小学习任务,下面是实现过程: 1.建立maven工程(方便管理jar包) 在pom.xml导入 jxl,mysql-connector 依赖 可以在maven仓库搜索 2.建 ...
- java读取excel文件数据
package com.smp.server.Ctrl; import java.io.File;import java.io.FileInputStream;import java.io.FileN ...
- 项目一:第四天 1、快递员的条件分页查询-noSession,条件查询 2、快递员删除(逻辑删除) 3、基于Apache POI实现批量导入区域数据 a)Jquery OCUpload上传文件插件使用 b)Apache POI读取excel文件数据
1. 快递员的条件分页查询-noSession,条件查询 2. 快递员删除(逻辑删除) 3. 基于Apache POI实现批量导入区域数据 a) Jquery OCUpload上传文件插件使用 b) ...
- 上传读取Excel文件数据
/// <summary> /// 上传读取Excel文件数据 /// 来自http://www.cnblogs.com/cielwater /// </summary> // ...
- Java读取Excel文件的几种方法
Java读取 Excel 文件的常用开源免费方法有以下几种: 1. JDBC-ODBC Excel Driver 2. jxl.jar 3. jcom.jar 4. poi.jar 简单介绍: 百度文 ...
- java读取excel文件的代码
如下内容段是关于java读取excel文件的内容,应该能对各朋友有所用途. package com.zsmj.utilit; import java.io.FileInputStream;import ...
- 关于解决java读取excel文件遇空行抛空指针的问题 !
关于解决java读取excel文件遇空行抛空指针的问题 ! package exceRead; import java.io.File; import java.io.FileInputStream; ...
- java 读取Excel文件并数据持久化方法Demo
import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util ...
- JAVA 读取excel文件成List<Entity>
package com.fsinfo.common.utils; import com.fsinfo.modules.enterprise.entity.EnterpriseRecordEntity; ...
- VC6.0读取Excel文件数据
啰嗦一下:本人所在公司从事碟式斯特林太阳能发电设备的研发与销售.单台设备图如下: 工作原理如下:整个设备大致可分为五个部分, 1.服务器,负责气象.发电等数据存取,电.网连接等处理: 2.气象站,通过 ...
随机推荐
- iOS加固保护新思路
技术简介 前言 iOS加固保护是基于虚机源码保护技术,针对iOS平台推出的下一代加固产品.可以对iOS APP中的可执行文件进行深度混淆.加固,并使用独创的虚拟机技术对代 码进行加密保护,使用任何 ...
- 比文件操作os库更优异的标准库pathlib
pathlib 库从 python3.4 开始作为内置库,到 python3.6 已经比较成熟.相比于老式的 os.path 有几个优势: 老的路径操作函数管理比较混乱,有的是导入 os, 有的又是在 ...
- 面试官:分库分表后如何生成全局ID?
分库分表后就不能使用自增 ID 来作为表的主键了,因为数据库自增 ID 只适用于单机环境,但如果是分布式环境,是将数据库进行分库.分表或数据库分片等操作时,那么数据库自增 ID 就会生成重复 ID,从 ...
- Python使用pandas库读取csv文件,并分组统计的一个例子
代码: # coding=gbk # 从HostWrites.csv读取数据并分组统计 import pandas import datetime print "\r\n从 HostWrit ...
- 灵魂拷问std::enable_shared_from_this,揭秘实现原理
参考博客: std::enable_shared_from_this原理浅析 引言 在C++编程中,使用智能指针是一种安全管理对象生命周期的方式.std::shared_ptr是一种允许多个指针共享对 ...
- 2016年第七届 蓝桥杯A组 C/C++决赛题解
蓝桥杯历年国赛真题汇总:Here 1.随意组合 小明被绑架到X星球的巫师W那里. 其时,W正在玩弄两组数据 (2 3 5 8) 和 (1 4 6 7) 他命令小明从一组数据中分别取数与另一组中的数配对 ...
- docker部署showdoc以及linux网关配置
docker 部署showdoc 准备工作: 切换为root用户 su root 更换为阿里云yum源 curl -o /etc/yum.repos.d/CentOS-Base.repo http:/ ...
- freeswitch上报信令到HOMER的配置方案
概述 HOMER是一款100%开源的针对SIP/VOIP/RTC的抓包工具和监控工具. 之前的文章中,我们介绍了HOMER的安装步骤,HOMER7的安装部署还是比较简单的,安装过程也比较顺利. 然后, ...
- Java标签在循环中的使用
定义 标签,类似--label1: 放在循环外部,用于内部多重循环语句的跳出 例子 public static void main(String[] args) { Scanner sc = new ...
- 【TouchGFX】IAR 下实现 touchgfx Caching Bitmaps 通过文件方式获取图像资源
1.Caching Bitmaps 修改缓存方式 2.修改 blockCopy 方法(注意:忘记返回状态导致发生错误) 3.修改分散文件将位于 ExtFlashSection section 数据重定 ...