Java读取excel指定行列的数据(通过jxl的方式)

Java读取Excel指定列的数据详细教程和注意事项(通过jxl的方式)

1.前言

本文使用jxl.jar工具类库实现读取Excel中指定列的数据。jxl.jar是通过java操作excel表格的工具类库,是由java语言开发而成的。这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件,但是这里仅支持excel的xls格式的,不支持xlsx格式,需要注意。如果需要两种格式都支持的话,请点击链接:java使用poi读取excel中指定行列的数据

2.注意事项

  • 支持Excel 95-2000的所有版本
  • 生成Excel 2000标准格式
  • 支持字体、数字、日期操作
  • 能够修饰单元格属性 支持图像和图表

jxl操作Excel包括对象Workbook(工作簿),Sheet(工作表) ,Cell(单元格)。一个Excel就对应一Workbook对象,一个Workbook可以有多个Sheet对象,一个Sheet对象可以有多个Cell对象。

3.主要的API说明

# 新建并获取工作薄:
Workbook workbook = Workbook.getWorkbook(inputStream);
# 读取工作表:
workbook.getSheet(int index);//index从0开始,0对应Sheet1
# 获取单元格:
sheet.getCell(int columnIndex, int rowIndex);
# 读取单元格内容:
cell.getContents();

更多api请点击这里jxl相关api简单介绍

4.示例代码

/**
     * 读取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();
        }
    }

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

注意代码中也要相应的改一下,更改以后进行再次进行测试:
在这里插入图片描述
在这里插入图片描述对比发现,已经将数据读出来了。这里再推荐两种操作excel的方法:POI 和 EasyExcel,这两种方法都是现在比较常用的方法,而且支持.xlsx格式。
本文转载至:https://www.cnblogs.com/sgh1023/p/9971109.html

笔者对其中内容稍作了补充,但是内容大部分与原作者保持一致。若有大神发现不当之处,希望不吝赐告,但是不喜勿喷,谢谢!

猜你喜欢

转载自blog.csdn.net/qq_41774102/article/details/127401015