迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Java >

用Java读取Excel文件

作者:迹忆客 最近更新:2023/08/06 浏览次数:

本文介绍了在 Java 程序中读取 Excel 文件的必要信息。 使用什么软件? 要遵循哪些步骤,最后但并非最不重要的一点是如何应用库以便用户可以读取 Excel 文件。 那么,让我们开始吧。


用 Java 读取 Excel 文件

在 Java 中,读取 Excel 文件并不像其他文件格式(例如 Microsoft Word)那么容易。 不过,原因很容易理解,因为 Excel 工作表包含单元格。

JDK(Java Development Kit)不允许用户处理Microsoft Excel和Microsoft Word等文件。 此外,它没有向用户提供所需的API,因此我们别无选择,只能依赖第三方库来完成我们的任务。

要使用 Java 读取 excel 文件,我们必须了解 APACHE POI 库,因为它可以适用于 .xls 和 .xlsx 形式。


APACHE POI 库概述

该库,APACHE POI,也称为Poor Obfuscation Implement,为用户提供了两种实现。 一种是HSSF,另一种是XSSF。

  1. HSSF - HSSF,可怕的电子表格格式,实现表示用户拥有适用于早期版本的 Microsoft Excel(更具体地说是 Excel 2003 及更早版本)的 API。
  2. XSSF - XSSF,XML 电子表格格式,实现表示用户拥有适用于更高版本的 Microsoft Excel 的 API。 在本例中,它适用于 Excel 2007+ 版本。 我们还可以使用此实现来处理 .xlsx 格式。

让我们研究一下它的接口和类,以进一步了解它的工作。

接口和类

请注意,下面提到的所有接口都适用于 HSSF 和 XSSF。

  1. 工作簿 - 工作簿是代表 Excel 工作簿的界面。 它有两个类:HSSFWorkbook 和 XSSFWorkbook。
  2. 工作表 - 众所周知,工作簿的中心结构称为工作表。 因此,工作表是代表 Excel 工作表的界面。

    它是 java.lang.Iterable 库的扩展。 此接口的两个类是 HSSFSheet 和 XSSFSheet。

  3. row - 它是一个表示 Excel 工作表行的接口。 该接口也是 java.lang.Iterable 库的扩展。 它有两个类:HSSFRow 和 XSSFRow。
  4. cell - 它是一个表示 Excel 工作表行中的单元格的界面。 它还具有两个类,称为 HSSFCell 和 XSSFCell。

既然我们知道 APACHE POI 库包含什么以及我们可以使用哪些接口和类,那么让我们研究一下读取 Excel 文件的步骤。

用 Java 读取 Excel 文件的步骤

这些步骤很容易遵循。

  • 创建lib文件夹

    在 Java 项目中创建一个名为 lib 的文件夹,用户将使用该文件夹打开并读取 Excel 文件。

     

  • 下载jar文件

    此步骤要求用户在上一步创建的 lib 文件夹中下载一些 jar 文件。 您需要下载 commons-collections4-4.1.jar、poi-3.17.jar、poi-ooxml-3.17.jar、poi-ooxml-schemas-3.17.jar 和 xmlbeans-2.6.0.jar

     

  • 创建添加jar文件的路径

    在此步骤中,我们必须创建路径来添加我们在上一步中下载的 jar 文件。 为此,右键单击我们在步骤 1 中创建的 Java 项目。

    然后我们将通过单击构建路径选项来构建 jar 文件的路径。 最后,添加外部“jar”文件后,我们将单击“应用”并关闭。

     

  • 创建一个 Java 类

    在这一步中创建一个Java类文件,然后我们可以调用我们想要的excel文件来读取数据。 下面是读取 Excel 文件的类文件的示例。

    本示例中将使用 XSSF,因为它使用 Excel 2007+ 版本。

     

    import java.io.File;
    import java.util.Iterator;
    import java.io.FileInputStream;
    import org.apache.poi.xssf.usermodel.XSSFWorkbook;
    import org.apache.poi.xssf.usermodel.XSSFSheet;
    import org.apache.poi.ss.usermodel.Row;
    import org.apache.poi.ss.usermodel.Cell;
    
    public class Example{
      public static void main(String[] args){
          try
          {
              File ExcelFile = new File("D:\\your_filename.xlsx");
              //obtaining bytes from the file
              FileInputStream FileStream = new FileInputStream(ExcelFile);
              //using the Workbook interface
              XSSFWorkbook ExcelWorkbook = new XSSFWorkbook(FileStream);
    
              //using the sheet class to get the object
              XSSFSheet ExcelSheet = ExcelWorkbook.getSheetAt(0);
              //iterating over excel file, rows.
              Iterator<Row> IterateRows = ExcelSheet.iterator();
              while (IterateRows.hasNext()){
                  Row ExcelRow = IterateRows.next();
    
                  //iterating over the column
                  Iterator<Cell> IterateCells = ExcelRow.cellIterator();
    
                  while (IterateCells.hasNext()){
                      Cell ExcelCell = IterateCells.next();
    
                      switch (ExcelCell.getCellType()){
                          case Cell.CELL_TYPE_STRING://represents string cell type
                          System.out.print(ExcelCell.getStringCellValue() + "\t");
                          break;
                          case Cell.CELL_TYPE_NUMERIC://represents number cell type
                          System.out.print(ExcelCell.getNumericCellValue() + "\t");
                          break;
                          default:
                      }
                  }
                  System.out.println("");
              }
          }
          catch(Exception exp)
          {
              exp.printStackTrace();
          }
      }
    }
    

    通过这个示例代码,我们可以轻松了解如何使用APACHE POI库。 此示例代码的输出将是用户提供的 Excel 文件数据。

上一篇:用 Java 创建 Excel 文件

下一篇:没有了

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

用 Java 创建 Excel 文件

发布时间:2023/08/06 浏览次数:141 分类:Java

本文介绍如何使用 Java 创建 Excel 文件。用 Java 创建 Excel 文件 Excel 工作表有存储数据的单元格,但用 Java 创建、读取和写入 Excel 文件很棘手。

Java 字母电话号码转换器

发布时间:2023/08/06 浏览次数:68 分类:Java

本文介绍如何用 Java 生成字母电话号码转换器。Java 字母电话号码转换器 有时,公司会使用电话号码格式,例如 555-GET-FOOD,这是编写电话号码的标准化流程,以便客户更容易记住。

Java中的并发队列实现

发布时间:2023/08/06 浏览次数:69 分类:Java

本文将讨论 Java 中并发队列的一些最有效的实现以及需要利用哪些实现。Java 中的并发队列 首先,我们来讨论所有三个队列。Java ConcurrentLinkedQueue、Java ArrayBlockingQueue、Java LinkedBlockingQueue

Java 中的闭包

发布时间:2023/08/06 浏览次数:140 分类:Java

本文将详细讨论闭包并提供必要的示例和解释以使该主题更容易。在开始讨论之前,让我们先看看闭包的一般语法,如下所示。Java 中的闭包 在下面的示例中,我们将说明最基本的闭包,其中我

在 Java 中使用带有 Jackson 的自定义序列化器

发布时间:2023/08/05 浏览次数:80 分类:Java

本文将介绍如何在 Java 中使用 Jackson 的自定义序列化器。 首先,我们来了解一下序列化的概念。Java 中的序列化 Java 中的序列化过程是一种将对象与字节流相互转换的技术。 这不仅可以将对象

Java 中的 Trie 数据结构

发布时间:2023/08/05 浏览次数:111 分类:Java

本文介绍了 Java 中的 Trie 数据结构。Java 中的 Trie 数据结构 Trie 词是从单词 Retrieval 中提取出来的,它是一种用于存储字符串集合的排序数据结构。

JAVA_OPTS 环境变量

发布时间:2023/08/05 浏览次数:199 分类:Java

JAVA_OPTS 是一个环境变量,用于将自定义设置传递给 Java 虚拟机。 本文介绍了 JAVA_OPTS 的使用。JAVA_OPTS 环境变量 JAVA_OPTS 是一个标准环境变量,用于设置 Java 虚拟机的自定义设置。

在Ubuntu中设置JAVA_HOME环境路径

发布时间:2023/08/05 浏览次数:154 分类:Java

本文将介绍如何在Ubuntu中设置Java环境路径。 Ubuntu 将 openjdk6 安装到 /usr/lib/jvm/java-6-openjdk 路径。

在 Ubuntu 中使用 OpenJDK 安装 Java

发布时间:2023/08/05 浏览次数:179 分类:Java

在本文中,我们将学习如何在 Ubuntu 20.04 中安装 Java。 它还说明了如何安装默认 Java、特定 Java 版本以及设置环境变量。在 Ubuntu 中使用 OpenJDK 安装 Java 在本文中,我们将使用 OpenJDK 安装 Java。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便