java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java读取Excel文件内容

使用Java读取Excel文件内容的三种方法

作者:大丸子

在日常开发中,我们常常需要读取Excel文件中的数据进行进一步处理,无论是批量导入数据、统计分析,还是自动化表格处理,Java都可以提供高效、稳定的读取方式,本文将介绍如何使用 Spire.XLS for Java 读取Excel文件中的内容,需要的朋友可以参考下

在日常开发中,我们常常需要读取Excel文件中的数据进行进一步处理。无论是批量导入数据、统计分析,还是自动化表格处理,Java都可以提供高效、稳定的读取方式。

本文将介绍如何使用 Spire.XLS for Java 读取Excel文件中的内容,涵盖从文件或流中加载、按单元格读取文本和数值、识别单元格类型以及提取公式等多种实用技巧。示例代码简单明了,适合初学者上手,也可作为构建复杂Excel处理功能的基础。

Maven:

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url>https://repo.e-iceblue.cn/repository/maven-public/</url>
    </repository>
</repositories>
<dependency>
    <groupId>e-iceblue</groupId>
    <artifactId>spire.xls.free</artifactId>
    <version>5.3.0</version>
</dependency>

方法1:从Excel文件中逐行读取所有内容

如果我们需要读取整个表格的数据,可以通过遍历工作表中所有已用单元格来获取值。

示例代码

import com.spire.xls.*;

public class ReadExcel {
    public static void main(String[] args) {
        // 创建Workbook对象并加载Excel文件
        Workbook workbook = new Workbook();
        workbook.loadFromFile("data.xlsx"); // 或 "data.xls"

        // 获取第一个工作表
        Worksheet sheet = workbook.getWorksheets().get(0);

        // 遍历每一行每一列,读取单元格内容
        for (int i = 1; i <= sheet.getLastRow(); i++) {
            for (int j = 1; j <= sheet.getLastColumn(); j++) {
                String cellText = sheet.getCellRange(i, j).getValue();
                System.out.print(cellText + "\t");
            }
            System.out.println();
        }
    }
}

说明:

读取结果:

方法2:通过InputStream读取Excel文件

当Excel文件来自网络、数据库或其他流形式时,我们可以通过 InputStream 加载它,无需将文件先保存在磁盘。

示例代码

import com.spire.xls.*;
import java.io.*;

public class ReadExcelFromStream {
    public static void main(String[] args) throws FileNotFoundException {
        // 创建输入流对象
        InputStream stream = new FileInputStream("data.xlsx");

        // 加载Excel文件
        Workbook workbook = new Workbook();
        workbook.loadFromStream(stream);

        System.out.println("Load Excel file successfully.");
    }
}

说明:

方法3:读取单元格的不同数据类型

除了文本,Excel单元格中还可能包含数字、布尔值、日期、公式等。下面示例展示如何获取各种数据类型及公式信息。

示例代码

import com.spire.xls.*;
import java.util.Date;

public class ReadCellTypes {
    public static void main(String[] args) {
        Workbook workbook = new Workbook();
        workbook.loadFromFile("data.xlsx");

        Worksheet sheet = workbook.getWorksheets().get(0);
        CellRange cell = sheet.getRange().get(2, 1); // B2

        String text = cell.getText(); // 显示文本
        String value = cell.getValue(); // 原始字符串
        Object value2 = cell.getValue2(); // 通用对象

        String formula = cell.getFormula(); // 公式内容
        String result = cell.getEnvalutedValue(); // 公式计算结果

        double number = cell.getNumberValue(); // 数值
        Date date = cell.getDateTimeValue(); // 日期
        boolean bool = cell.getBooleanValue(); // 布尔值

        System.out.println("Text: " + text);
        System.out.println("Raw Value: " + value);
        System.out.println("Formula: " + formula);
        System.out.println("Evaluated Result: " + result);
        System.out.println("Number: " + number);
        System.out.println("Date: " + date);
        System.out.println("Boolean: " + bool);
    }
}

说明:

总结

本文介绍了三种在Java中读取Excel文件的方法,涵盖了从本地文件与流中加载、按行读取数据、以及单元格类型识别等多个实用场景。通过这些技巧,我们可以轻松实现对Excel文件内容的灵活读取与后续处理。

以上就是使用Java读取Excel文件内容的三种方法的详细内容,更多关于Java读取Excel文件内容的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文