使用Java将XLS转为XLSX格式

 更新时间:2025年11月21日 08:20:31   作者:用户372157426135  
在处理 Excel 文件时,常常会遇到两种主要的格式.xls 和 .xlsx,本文将介绍如何使用 Java 来实现 .xls 和 .xlsx 格式的相互转换,有需要的可以了解下

在处理 Excel 文件时,常常会遇到两种主要的格式:.xls.xlsx.xls 是旧版 Excel 所使用的格式,而 .xlsx 则是从 Excel 2007 版本开始的默认格式。无论是为了将旧文件更新为新版格式,还是确保与不同系统之间的兼容性,转换这两种格式是非常常见的需求。

本文将介绍如何使用 Java 来实现 .xls.xlsx 格式的相互转换。无论你是开发者还是技术人员,这篇文章将为你提供一种高效、便捷的解决方案。

为什么要将 XLS 转换为 XLSX

在开始介绍转换操作之前,先简单了解一下为什么需要将 .xls 文件转换为 .xlsx。与 .xls 相比,.xlsx 格式有以下几个显著的优势:

  • 文件体积更小.xlsx 格式采用 ZIP 压缩,能有效减少文件的体积。
  • 更好的性能 :Excel 2007 及后续版本对 .xlsx 格式有更好的支持,尤其在处理大型数据集时,性能表现更加优越。
  • 支持更多功能.xlsx 格式能够支持更多的行列(超过 6 万行,1.6 万列),并且有更多高级的公式和格式化选项。

不过,有些老旧系统或第三方应用可能仍然需要 .xls 格式的文件。在这种情况下,从 .xlsx 转换为 .xls 也是非常必要的。

Java 中的 Excel 文件转换工具

在 Java 中,有多种库可以帮助开发者处理 Excel 文件的格式转换,比如 Apache POI 和 Spire.XLS。Apache POI 是一个开源的库,广泛应用于处理 Microsoft Office 格式文件;而 Spire.XLS 提供了一个更加简洁且易于使用的 API,特别是在处理 .xls.xlsx 文件转换时,使用起来更加高效。

在本文中,我们将主要介绍 Spire.XLS,它不仅支持 Excel 文件的读取和写入,还能轻松进行格式转换,并且对 .xls.xlsx 格式都提供了良好的支持。

如何使用 Java 将 XLS 转换为 XLSX

接下来,我们将通过具体的代码示例,介绍如何使用 Java 将 .xls 文件转换为 .xlsx 格式。

1. 将 Spire.XLS 添加到项目中

首先,你需要将 Spire.XLS 库集成到你的 Java 项目中。你可以直接从官网下载安装,或者如果使用 Maven 构建项目,可以直接在 pom.xml 中添加以下依赖:

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

2. 加载 XLS 文件并保存为 XLSX 文件

将库集成到项目中后,就可以使用以下代码加载 .xls 文件并将其转换为 .xlsx 格式:

import com.spire.xls.*;

public class ExcelConversion {
    public static void main(String[] args) {
        // 创建一个 Workbook 对象
        Workbook workbook = new Workbook();
        
        // 加载 .xls 文件
        workbook.loadFromFile("input.xls");
        
        // 转换并保存为 .xlsx 格式
        workbook.saveToFile("output.xlsx", ExcelVersion.Version2013);
    }
}

在这个示例中,loadFromFile 方法用于加载 .xls 文件,接着通过 saveToFile 方法将文件转换并保存为 .xlsx 格式。ExcelVersion.Version2013 参数表示文件将被保存为 .xlsx 格式。

3. 运行程序

完成上述操作后,运行程序,.xls 文件就会被成功转换为 .xlsx 格式,并保存为 output.xlsx

如何将 XLSX 转换为 XLS

.xlsx 转换为 .xls 的过程也非常简单。只需稍微调整输入和输出格式即可:

import com.spire.xls.*;

public class ExcelConversion {
    public static void main(String[] args) {
        // 创建一个 Workbook 对象
        Workbook workbook = new Workbook();
        
        // 加载 .xlsx 文件
        workbook.loadFromFile("input.xlsx");
        
        // 转换并保存为 .xls 格式
        workbook.saveToFile("output.xls", ExcelVersion.Version97To2003);
    }
}

在这里,ExcelVersion.Version97To2003 参数指定了将文件保存为 .xls 格式。

需要注意的事项

  • 文件大小和功能 :从 .xlsx 转换为 .xls 时,要注意 .xls 格式的限制,例如支持的行列数较少,且无法支持一些新版本的 Excel 特性。因此,转换过程中可能会丢失某些数据或格式。
  • 兼容性 :转换后的文件,建议在目标版本的 Excel 中进行测试,以确保文件的兼容性和正常显示。
  • 错误处理 :处理文件时,加入适当的错误处理代码可以帮助你应对例如文件格式不匹配或文件无法访问等常见问题。

总结

在 Java 中,处理 .xls.xlsx 格式的转换是日常工作中的常见需求。通过使用 Spire.XLS 库,你可以轻松地将 Excel 文件从 .xls 转换为 .xlsx,或者将 .xlsx 转换为 .xls,并将这一过程集成到你的 Java 应用中。

按照本文提供的步骤,你可以高效地完成 Excel 文件格式的转换,确保在不同平台和版本的 Excel 中都能顺利使用这些文件。

到此这篇关于使用Java将XLS转为XLSX格式的文章就介绍到这了,更多相关Java XLS转XLSX内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 手把手教你怎么创建spring项目

    手把手教你怎么创建spring项目

    今天教大家怎么写spring项目,文中有非常详细的图文示例及介绍,对正在学习java的小伙伴们很有帮助,需要的朋友可以参考下
    2021-06-06
  • 详解Java分布式事务的 6 种解决方案

    详解Java分布式事务的 6 种解决方案

    在分布式系统、微服务架构大行其道的今天,服务间互相调用出现失败已经成为常态,本文侧重于其他几项,关于 2PC、3PC 传统事务,网上资料已经非常多了,这里不多做重复,本文通过示例给大家介绍Java分布式事务的 6 种解决方案,一起看看吧
    2021-06-06
  • 详解Java 包扫描实现和应用(Jar篇)

    详解Java 包扫描实现和应用(Jar篇)

    这篇文章主要介绍了详解Java 包扫描实现和应用(Jar篇),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • jvm类加载器基础解析

    jvm类加载器基础解析

    这篇文章主要介绍了jvm类加载器基础解析,具有一定借鉴价值,需要的朋友可以参考下
    2017-12-12
  • Java 批量获取地址间距离工具(支持中转站)

    Java 批量获取地址间距离工具(支持中转站)

    本文主要介绍了Java批量获取地址间距离,获取两个地址间距离,实现方式比较多,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • Java使用BigDecimal进行高精度计算的示例代码

    Java使用BigDecimal进行高精度计算的示例代码

    本篇文章主要介绍了Java使用BigDecimal进行高精度计算的示例代码,具有一定的参考价值,有兴趣的可以了解一下
    2017-09-09
  • Spring Boot 定制URL匹配规则的方法

    Spring Boot 定制URL匹配规则的方法

    本篇文章主要介绍了Spring Boot 定制URL匹配规则的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • java实现接口的典型案例

    java实现接口的典型案例

    下面小编就为大家带来一篇java实现接口的典型案例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • SpringBoot HikariCP连接池监控实现方案

    SpringBoot HikariCP连接池监控实现方案

    文章介绍了五种监控SpringBoot应用程序中HikariCP连接池状态和性能的工具和技术,包括SpringBootActuator、Micrometer、Prometheus+Grafana、HikariCP自带的Metrics以及NewRelic/Datadog等第三方服务,每种方法都有其特点和配置步骤
    2025-01-01
  • iReport生成pdf打印的实例代码

    iReport生成pdf打印的实例代码

    下面小编就为大家分享一篇iReport生成pdf打印的实例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-11-11

最新评论