Java Spire.XLS快速创建与读取Excel的实战技巧

 更新时间:2025年12月29日 16:13:09   作者:LSTM97  
在现代软件开发中,Excel 文档的管理和操作是一个常见的需求,,本文将详细介绍如何使用 Spire.XLS for Java 库,以便轻松地读写 Excel 文档,感兴趣的小伙伴可以了解下

在现代软件开发中,Excel 文档的管理和操作是一个常见的需求。无论是在数据分析、报表生成,还是在管理信息系统中,Excel 都扮演着重要的角色。本文将介绍如何使用 Spire.XLS for Java 库,以便轻松地读写 Excel 文档。

Spire.XLS for Java 简介

Spire.XLS 是一款强大的 Java Excel 组件,支持高效的 Excel 文件创建、编辑、读取和转换功能。无论是 .xlsx 还是 .xls 格式的文件,这个库都能轻松处理。它不仅提供了广泛的 API,还具备快速的性能和良好的文档支持,使得开发者在处理表格时更加高效。

使用 Maven 安装 Spire.XLS for Java

如果你的项目使用 Maven 作为构建工具,可以通过在 pom.xml 文件中添加以下依赖来安装 Spire.XLS:

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.xls</artifactId>
        <version>15.12.15</version>
    </dependency>
</dependencies>

这样,Maven 会自动下载并包含所需的库文件,方便你在项目中使用。

读取 Excel 文件

在这一部分,我们将介绍如何读取 Excel 文件中的数据。以下是一个简单的示例代码,展示了如何加载已有的 Excel 文件,并输出其内容。

import com.spire.xls.CellRange;
import com.spire.xls.Workbook;
import com.spire.xls.Worksheet;

public class ReadData {

    public static void main(String[] args) {

        // 创建一个 Workbook 对象
        Workbook wb = new Workbook();

        // 加载现有的 Excel 文件
        wb.loadFromFile("C:/Users/Administrator/Desktop/NewSpreadsheet.xlsx");

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

        // 获取包含数据的单元格范围
        CellRange locatedRange = sheet.getAllocatedRange();

        // 遍历行
        for (int i = 0; i < locatedRange.getRows().length; i++) {

            // 遍历列
            for (int j = 0; j < locatedRange.getColumnCount(); j++) {

                // 获取特定单元格的数据
                System.out.print(locatedRange.get(i + 1, j + 1).getValue() + "  ");
            }
            System.out.println();
        }
    }
}

代码解析

  • Workbook 对象 :创建一个 Workbook 对象,用于加载 Excel 文件。
  • 加载文件 :通过 loadFromFile 方法加载存在的 Excel 文件。
  • 获取工作表 :通过 getWorksheets().get(0) 方法获得第一个工作表。
  • 遍历数据 :使用双重循环遍历每一行和每一列,打印出单元格中的值。

写入 Excel 文件

接下来,我们将展示如何创建新的 Excel 文件,设置工作表的基本信息,并写入数据。

import com.spire.xls.*;

public class CreateSpreadsheet {

    public static void main(String[] args) {

        // 创建一个 Workbook 对象
        Workbook wb = new Workbook();

        // 移除默认工作表
        wb.getWorksheets().clear();

        // 添加一个名为 "员工" 的工作表
        Worksheet sheet = wb.getWorksheets().add("员工");

        // 合并 A1 到 G1 的单元格
        sheet.getRange().get("A1:G1").merge();

        // 向 A1 写入数据并应用格式
        sheet.getRange().get("A1").setValue("华宇汽车公司员工基本信息");
        sheet.getRange().get("A1").setHorizontalAlignment(HorizontalAlignType.Center);
        sheet.getRange().get("A1").setVerticalAlignment(VerticalAlignType.Center);
        sheet.getRange().get("A1").getStyle().getFont().isBold(true);
        sheet.getRange().get("A1").getStyle().getFont().setSize(13);

        // 设置第一行的高度
        sheet.setRowHeight(1, 30);

        // 创建一个二维数组
        String[][] twoDimensionalArray = new String[][]{
                {"姓名", "性别", "出生日期", "学历", "联系电话", "职位", "编号"},
                {"艾伦", "男", "1990-02-10", "本科", "24756854", "机械师", "0021"},
                {"帕特里克", "男", "1985-06-08", "硕士", "59863247", "机械师", "0022"},
                {"珍娜", "女", "1989-11-25", "本科", "79540352", "销售", "0023"},
                {"汤米", "男", "1988-04-16", "硕士", "52014060", "机械师", "0024"},
                {"克里斯蒂娜", "女", "1998-01-21", "本科", "35401489", "人力资源", "0025"}
        };

        // 从数组导入数据到工作表
        sheet.insertArray(twoDimensionalArray, 2, 1);

        // 设置一个范围的行高
        sheet.getRange().get("A2:G7").setRowHeight(15);

        // 设置列宽
        sheet.setColumnWidth(2, 15);
        sheet.setColumnWidth(3, 21);
        sheet.setColumnWidth(4, 15);

        // 设置边框样式
        sheet.getRange().get("A2:G7").borderAround(LineStyleType.Medium);
        sheet.getRange().get("A2:G7").borderInside(LineStyleType.Thin);
        sheet.getRange().get("A2:G2").borderAround(LineStyleType.Medium);
        sheet.getRange().get("A2:G7").getBorders().setKnownColor(ExcelColors.Black);

        // 保存为 .xlsx 文件
        wb.saveToFile("output/NewSpreadsheet.xlsx", FileFormat.Version2016);
    }
}

代码解析

  • Workbook 对象 :创建一个新的 Workbook 对象。
  • 删除默认工作表 :通过 clear 方法删除默认的工作表。
  • 添加工作表 :创建一个名为 "员工" 的工作表。
  • 合并单元格 :合并 A1 到 G1 的单元格。
  • 写入数据 :设置 A1 单元格的值,并调整其格式。
  • 插入数组数据 :将二维数组的数据插入到工作表中。
  • 设置边框和格式 :设置行高、列宽及单元格的边框样式。
  • 保存文件 :将工作簿保存为一个新的 Excel 文件。

总结

通过使用 Spire.XLS for Java 程序库,我们可以方便地处理 Excel 文档。无论是读取已有的数据,还是生成新的表格,Spire.XLS 都提供了极大的便利。它简单易用的 API 和丰富的功能特性,使得 Java 开发者能够轻松实现各种 Excel 操作。

到此这篇关于Java Spire.XLS快速创建与读取Excel的实战技巧的文章就介绍到这了,更多相关Java创建与读取Excel内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于java socket实现 聊天小程序

    基于java socket实现 聊天小程序

    这篇文章主要介绍了基于java socket实现 聊天小程序,代码分为服务器和客户端,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • java数据结构循环队列的空满判断及长度计算

    java数据结构循环队列的空满判断及长度计算

    这篇文章主要为大家介绍了java数据结构循环队列的空满判断及长度计算,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • eclipse启动tomcat无法访问的解决方法

    eclipse启动tomcat无法访问的解决方法

    这篇文章介绍了eclipse启动tomcat无法访问的解决方法,有需要的朋友可以参考一下
    2013-10-10
  • SpringCloud Eureka搭建的方法步骤

    SpringCloud Eureka搭建的方法步骤

    这篇文章主要介绍了SpringCloud Eureka搭建的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • Java日志框架打印应用程序日志代码的执行情况分析

    Java日志框架打印应用程序日志代码的执行情况分析

    在配置INFO日志级别时,日志器(logger)中debug级的日志代码仍会被执行,只是是否输出取决于配置的日志级别,本文基于Java 1.8、SLF4J 1.7.25和Log4j 2.20.0进行实验,详述了日志框架处理日志代码的机制,感兴趣的朋友一起看看吧
    2024-10-10
  • JavaWeb之Filter过滤器详解

    JavaWeb之Filter过滤器详解

    本篇文章主要介绍了JavaWeb之Filter过滤器详解,实例分析了JavaWeb之Filter过滤器的使用技巧,非常具有实用价值,需要的朋友可以参考下。
    2017-03-03
  • Spring Cloud Hystrix原理与注意事项小结

    Spring Cloud Hystrix原理与注意事项小结

    本文介绍了Hystrix的基本概念、工作原理以及其在实际开发中的应用方式,通过对Hystrix的深入学习,开发者可以在分布式系统中实现精细的错误处理机制,并能够及时响应系统中的异常,避免服务的连锁崩溃,感兴趣的朋友一起看看吧
    2025-03-03
  • idea创建springboot项目和springcloud项目的详细教程

    idea创建springboot项目和springcloud项目的详细教程

    这篇文章主要介绍了idea创建springboot项目和springcloud项目方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • MyBatis多表查询和注解开发案例详解

    MyBatis多表查询和注解开发案例详解

    这篇文章主要介绍了MyBatis多表查询和注解开发,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • 详解Spring Boot Web项目之参数绑定

    详解Spring Boot Web项目之参数绑定

    本篇文章主要介绍了详解Spring Boot Web项目之参数绑定,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-03-03

最新评论