java获取xlsx某列数据_Java读取Excel指定列的数据详细教程和注意事项

本文介绍了如何使用jxl.jar库读取Excel文件中指定列的数据,包括工作簿、工作表和单元格的操作。示例代码演示了读取第一列内容的过程,注意jxl.jar仅支持.xls格式,不支持.xlsx。解决方案是将.xlsx文件另存为.xls格式。

本文使用jxl.jar工具类库实现读取Excel中指定列的数据。

jxl.jar是通过java操作excel表格的工具类库,是由java语言开发而成的。这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。

支持Excel 95-2000的所有版本

生成Excel 2000标准格式

支持字体、数字、日期操作

能够修饰单元格属性 支持图像和图表

jxl操作Excel包括对象Workbook(工作簿),Sheet(工作表) ,Cell(单元格)。一个Excel就对应一Workbook对象,一个Workbook可以有多个Sheet对象,一个Sheet对象可以有多个Cell对象。其主要的API说明如下:

新建并获取工作薄:

Workbook workbook = Workbook.getWorkbook(inputStream);

读取工作表:

workbook.getSheet(int index);//index从0开始,0对应Sheet1

获取单元格:

sheet.getCell(int columnIndex, int rowIndex);

读取单元格内容:

cell.getContents();

代码如下:

/**

* 读取excel表格中特定的列

*

* @param file

* 文件

* @param index

* 第index列(0开始)

* @throws Exception

*/

public static void readColumn(File file, int index) throws Exception {

InputStream inputStream = new FileInputStream(file.getAbsoluteFile());

Workbook workbook = Workbook.getWorkbook(inputStream);

Sheet sheet = workbook.getSheet(0);

int rows = sheet.getRows();

int columns = sheet.getColumns();

for (int i = 1; i < rows; i++) {

Cell cell = sheet.getCell(index, i);

System.out.println(cell.getContents());

}

}

用桌面上的一个Excel文件进行测试:

public static void main(String[] args) {

File file = new File("C:\\Users\\Administrator\\Desktop\\世界名著.xlsx");

try {

System.out.println("正在读取书名...");

readColumn(file, 0);//读取第一列

System.out.println("读取完毕");

} catch (Exception e) {

e.printStackTrace();

}

}

奇怪,竟然报错了:

eb99265b0aae0e52d070f9a6fea03974.png

这是使用jxl时一个需要注意的地方,jxl只支持Excel 95-2000 工作簿(*.xls),不支持Excel 工作簿(*.xlsx)。解决办法是把文件另存为xls的格式,注意一定要打开Excel文件再进行“另存为”操作,直接改后缀名是不可以的!

注意代码中也要相应的改一下,更改以后进行再次进行测试:

0837e7441c3b52218d9376fadcbf3db2.png

fc011bc9269e125c713f80f4056d0b79.png

对比二者,完美!

Java读取excel指定sheet中的各行数据,存入二维数组,包括首行&comma;并打印

1. 读取 //读取excel指定sheet中的各行数据,存入二维数组,包括首行 public static String[][] getSheetData(XSSFSheet sheet) thro ...

java读取Excel表格中的数据

1.需求 用java代码读取hello.xls表格中的数据 2.hello.xls表格 3.java代码 package com.test; import java.io.File; import j ...

读取Excel表格日期类型数据的时候

用POI读取Excel数据:(版本号:POI3.7) 1.读取Excel 2.Excel数据处理: Excel存储日期.时间均以数值类型进行存储,读取时POI先判断是是否是数值类型,再进行判断转化 1 ...

利用java反射机制实现读取excel表格中的数据

如果直接把excel表格中的数据导入数据库,首先应该将excel中的数据读取出来. 为了实现代码重用,所以使用了Object,而最终的结果是要获取一个list如List.Lis ...

java 读取Excel文件并数据持久化方法Demo

import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util ...

java用poi读取Excel表格中的数据

Java读写Excel的包是Apache POI(项目地址:http://poi.apache.org/),因此需要先获取POI的jar包,本实验使用的是POI 3.9稳定版.Apache POI 代 ...

Java读取Excel数据

Java读取Excel数据,解析文本并格式化输出 Java读取Excel数据,解析文本并格式化输出 Java读取Excel数据,解析文本并格式化输出 下图是excel文件的路径和文件名 下图是exce ...

Java读取excel表格

Java读取excel表格 一般都是用poi技术去读取excel表格的,但是这个技术又是什么呢 什么是Apache POI? Apache POI是一种流行的API,它允许程序员使用Java程序创建, ...

java程序转换excel中科学记数法的数据为date类型

今天出于某些原因从mongodb数据库中导出了一些数据,为了更直观的发送给其他人查阅,便使用mongoVUE的导出为excel功能.   但是导出后出现了一个问题,里边有一列存储时间的,存储的是lon ...

随机推荐

Solr的主界面加登录权限

如题:效果如下图zu 只需两步: 1.tomcat-users.xml   下添加

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值