Java创建、读取和更新Excel文档的实现指南

 更新时间:2025年10月22日 08:40:39   作者:缺点内向  
还在用Java代码逐行雕刻Excel文档吗,是时候升级你的生产力工具箱了,借助Spire.XLS for Java,无论是创建新报表、读取关键数据还是实时更新内容,现在你都能以简单的代码指令轻松实现,所以本文给大家介绍了如何使用Java创建、读取和更新Excel文档,需要的朋友可以参考下

引言

还在用Java代码逐行“雕刻”Excel文档吗?是时候升级你的生产力工具箱了。借助Spire.XLS for Java,无论是创建新报表、读取关键数据还是实时更新内容,现在你都能以简单的代码指令轻松实现。让我们一起,把繁琐的文档操作变成一次流畅的自动化之旅。

Java操作Excel的常见挑战与解决方案概述

处理Excel时,Java原生API往往力不从心,而Apache POI虽功能全面,但在高性能和简洁API场景下,我们可能需要更优解。

Spire.XLS for Java正是这样一个轻量而强大的选择。它提供了直观的面向对象API,让你用寥寥几行代码,就能轻松搞定Excel的创建、读取和更新,同时完美支持公式、图表等高级功能。

下面通过关键代码,一探究竟。

使用Spire.XLS for Java创建Excel文档

创建Excel文档是Excel操作的基础。Spire.XLS for Java使得这一过程变得异常简单。

import com.spire.xls.*;
import com.spire.xls.collections.WorksheetsCollection;

public class CreateExcelDoc {
    public static void main(String[] args) {
        // 创建一个新的工作簿对象
        Workbook workbook = new Workbook();

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

        // 设置工作表名称
        sheet.setName("销售数据");

        // 写入数据到单元格
        sheet.getCellRange("A1").setText("产品名称");
        sheet.getCellRange("B1").setText("销售额");
        sheet.getCellRange("A2").setText("T恤");
        sheet.getCellRange("B2").setNumberValue(1250.50);
        sheet.getCellRange("A3").setText("裤子");
        sheet.getCellRange("B3").setNumberValue(899.00);

        // 设置单元格样式
        CellStyle style = sheet.getCellRange("A1:B1").getStyle();
        style.getFont().setKnownColor(ExcelColors.White);
        style.getFillPattern().setKnownColor(ExcelColors.DarkBlue);
        style.getFont().setBold(true);

        // 自动调整列宽
        sheet.autoFitColumn(1);
        sheet.autoFitColumn(2);

        // 保存Excel文件
        try {
            workbook.saveToFile("CreateExcelDoc.xlsx", ExcelVersion.Version2016);
            System.out.println("Excel文档创建成功!");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

上述代码演示了如何创建一个新的Excel工作簿,添加工作表,写入文本和数字数据,设置单元格样式,并最终保存为.xlsx格式。整个过程直观明了,API设计符合开发者的直觉。

读取和更新现有Excel文档

读取和更新是Excel操作中同样重要的环节。Spire.XLS for Java提供了灵活的API来加载现有文件,定位并修改数据。

import com.spire.xls.*;

public class ReadAndUpdateExcelDoc {
    public static void main(String[] args) {
        // 加载现有Excel文件
        Workbook workbook = new Workbook();
        try {
            workbook.loadFromFile("CreateExcelDoc.xlsx");
        } catch (Exception e) {
            e.printStackTrace();
            return;
        }

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

        // 读取特定单元格数据
        String productName = sheet.getCellRange("A2").getText();
        double salesAmount = sheet.getCellRange("B2").getNumberValue();
        System.out.println("读取数据:产品名称 - " + productName + ", 销售额 - " + salesAmount);

        // 更新单元格内容
        sheet.getCellRange("A4").setText("外套");
        sheet.getCellRange("B4").setNumberValue(1500.00);
        System.out.println("已添加新产品:外套,销售额:1500.00");

        // 修改已有单元格数据
        sheet.getCellRange("B3").setNumberValue(950.00);
        System.out.println("已更新裤子销售额为:950.00");

        // 插入一行
        sheet.insertRow(3); // 在第3行插入新行
        sheet.getCellRange("A3").setText("鞋子");
        sheet.getCellRange("B3").setNumberValue(750.00);
        System.out.println("已插入新行:鞋子,销售额:750.00");


        // 保存修改后的Excel文件
        try {
            workbook.saveToFile("UpdatedExcelDoc.xlsx", ExcelVersion.Version2016);
            System.out.println("Excel文档更新成功!");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

此示例展示了如何加载一个已存在的Excel文件,读取指定单元格的内容,以及如何更新单元格数据和插入新行。Spire.XLS for Java的API设计直观,即使是复杂的操作也能通过几行代码实现。

总结

相信现在你已掌握了用Spire.XLS操作Excel的核心技巧,不妨在项目中一试身手。让代码帮你搞定重复劳动,把时间留给更有价值的技术挑战。希望这个方案能成为你的得力助手,让文档处理变得轻松高效!

到此这篇关于Java创建、读取和更新Excel文档的实现指南的文章就介绍到这了,更多相关Java创建、读取和更新Excel内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • JAVACORE与HEAPDUMP生成方法

    JAVACORE与HEAPDUMP生成方法

    JavaCore文件主要保存的是Java应用各线程在某一时刻的运行的位置,即JVM执行到哪一个类、哪一个方法、哪一个行上,它是一个文本文件,打开后可以看到每一个线程的执行栈,以stack trace的显示,本文介绍JAVACORE与HEAPDUMP生成大法,感兴趣的朋友跟随小编一起看看吧
    2024-08-08
  • java生成xml格式文件的方法

    java生成xml格式文件的方法

    这篇文章主要介绍了java生成xml格式文件的方法,涉及java节点遍历与属性操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2016-07-07
  • SpringBoot 请求参数忽略大小写的实例

    SpringBoot 请求参数忽略大小写的实例

    这篇文章主要介绍了SpringBoot 请求参数忽略大小写的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-01-01
  • java 使用poi动态导出的操作

    java 使用poi动态导出的操作

    这篇文章主要介绍了java 使用poi动态导出的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • Spring cloud alibaba之Ribbon负载均衡实现方案

    Spring cloud alibaba之Ribbon负载均衡实现方案

    Spring cloud Ribbon是基于Netflix Ribbon实现的一套客户端的负载均衡工具,Ribbon客户端提供一系列完善的配置,如超时、重试等,Ribbon也可以实现自己的负载均衡算法,感兴趣的朋友跟随小编一起看看吧
    2021-07-07
  • 解决java字符串转换成时间Unparseable date出错的问题

    解决java字符串转换成时间Unparseable date出错的问题

    这篇文章主要介绍了解决java字符串转换成时间Unparseable date出错的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • Java Socket报错打开文件过多的问题

    Java Socket报错打开文件过多的问题

    这篇文章主要介绍了Java Socket报错打开文件过多的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • 分布式之全面了解Kafka的使用与特性

    分布式之全面了解Kafka的使用与特性

    Kafka 是我工作多年使用最多的消息中间件 ,特点是拥有巨大吞吐量(数百万/秒),作为当下最流行的分布式,可水平扩展,可容错的“消息系统”,下面跟随小编看下分布式之全面了解Kafka的使用与特性
    2021-11-11
  • springboot 传参校验@Valid及对其的异常捕获方式

    springboot 传参校验@Valid及对其的异常捕获方式

    这篇文章主要介绍了springboot 传参校验@Valid及对其的异常捕获方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • java的equals和==的比较示例

    java的equals和==的比较示例

    这篇文章主要介绍了java的equals和==的比较示例,需要的朋友可以参考下
    2014-04-04

最新评论