21xrx.com
2024-12-23 02:48:05 Monday
登录
文章检索 我的文章 写文章
Java基础教程
2023-06-15 00:15:19 深夜i     --     --
Java Excel POI JExcel EasyExcel

在日常的工作中,我们经常需要读取Excel中的数据来进行各种处理。而Java作为一门非常流行的编程语言,也有它自己的方式来读取Excel数据。在这篇文章中,我们将介绍如何在Java中使用原生的API来读取Excel数据,并给出代码示例。

### 1. 使用POI API读取Excel

Apache POI是一个用于处理Office文档的Java API。它可以读取、写入和操作Excel、PowerPoint和Word等文档。下面是一个使用POI API读取Excel的代码示例:


import java.io.File;

import java.io.FileInputStream;

import java.io.IOException;

import org.apache.poi.ss.usermodel.Cell;

import org.apache.poi.ss.usermodel.Row;

import org.apache.poi.ss.usermodel.Sheet;

import org.apache.poi.ss.usermodel.Workbook;

import org.apache.poi.ss.usermodel.WorkbookFactory;

public class ReadExcel {

  public static void main(String[] args) throws IOException {

    FileInputStream inputStream = new FileInputStream(new File("path/to/excel/file.xlsx"));

    Workbook workbook = WorkbookFactory.create(inputStream);

    Sheet sheet = workbook.getSheetAt(0);

    for (Row row : sheet) {

      for (Cell cell : row) {

        switch(cell.getCellType()) {

          case Cell.CELL_TYPE_STRING:

            System.out.print(cell.getStringCellValue() + "\t");

            break;

          case Cell.CELL_TYPE_NUMERIC:

            System.out.print(cell.getNumericCellValue() + "\t");

            break;

        }

      }

      System.out.println();

    }

    workbook.close();

    inputStream.close();

  }

}

### 2. 使用JExcel API读取Excel

JExcel是另一个用于处理Excel的Java API。它具有很多与POI相似的功能,并且允许您读取和写入Excel文件。下面是一个使用JExcel API读取Excel的代码示例:


import java.io.File;

import java.io.IOException;

import jxl.Cell;

import jxl.Sheet;

import jxl.Workbook;

import jxl.read.biff.BiffException;

public class ReadExcel {

  public static void main(String args[]) throws BiffException, IOException {

    Workbook workbook = Workbook.getWorkbook(new File("path/to/excel/file.xls"));

    Sheet sheet = workbook.getSheet(0);

    for (int i = 0; i < sheet.getRows(); i++) {

      for (int j = 0; j < sheet.getColumns(); j++) {

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

        System.out.print(cell.getContents() + "\t");

      }

      System.out.println();

    }

    workbook.close();

  }

}

### 3. 使用EasyExcel读取Excel

EasyExcel是一个基于注解的Java读写Excel工具。它简化了开发人员的工作,使得读、写Excel变得更加容易。下面是一个使用EasyExcel读取Excel的代码示例:


import java.util.List;

import com.alibaba.excel.EasyExcel;

import com.alibaba.excel.read.listener.ReadListener;

public class ReadExcel {

  public static void main(String[] args) {

    String fileName = "path/to/excel/file.xlsx";

    ReadListener listener = new ReadListener() {

      @Override

      public void onException(Exception exception)

        // TODO Auto-generated method stub

      

      @Override

      public void onSkip(int arg0, int arg1)

        // TODO Auto-generated method stub

      

      @Override

      public void onReadError(Exception arg0, int arg1, int arg2)

        // TODO Auto-generated method stub

      

      @Override

      public void onRead(List objectList, com.alibaba.excel.metadata.Sheet sheet) {

        for (Object o : objectList) {

          System.out.println(o.toString());

        }

      }

    };

    EasyExcel.read(fileName).sheet().registerReadListener(listener).doRead();

  }

}

通过本文的介绍,相信你已经掌握了使用Java原生API读取Excel的方法,并且也了解了几种不同的读取Excel的工具。在实际的工作中,你可以根据需要选择最适合你的工具来读取Excel数据。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复