Java自动化设置接收或拒绝Excel文件修订

 更新时间:2026年01月06日 08:26:25   作者:用户033212666367  
本文将深入探讨如何利用 Java 编程的强大能力,结合 Spire.XLS for Java 库,自动化地设置接收或拒绝 Excel 文件中的所有修订,文中的示例代码简洁易懂,希望对大家有所帮助

在现代团队协作中,Excel 文件作为数据共享和分析的重要载体,经常需要在不同成员之间流转、修改。然而,随之而来的修订痕迹管理常常让人头疼。当一个 Excel 文件中包含了大量的修订(插入、删除、格式更改等),如何高效地处理这些修订,是接受所有修改,还是拒绝某些不必要的变动,成为许多开发者面临的实际问题。手动逐一审查和处理不仅效率低下,还容易出错。

本文将深入探讨如何利用 Java 编程的强大能力,结合 Spire.XLS for Java 库,自动化地设置接收或拒绝 Excel 文件中的所有修订。通过本文的学习,您将掌握一种实用且高效的方法,极大地提升处理带有修订的 Excel 文件的效率。

Spire.XLS for Java 简介与环境搭建

Spire.XLS for Java 是一个功能强大的 Java 组件,专为处理 Excel 文件而设计。它支持创建、读取、编辑、转换和打印 Excel 文档,并且提供了丰富的 API 来操作 Excel 的各种元素,包括单元格、行、列、公式、图表、图片,以及我们今天要重点关注的修订功能。其优点在于功能全面且易于使用,能够满足企业级应用对 Excel 处理的复杂需求。

要在您的 Java 项目中使用 Spire.XLS,您需要将其作为依赖项添加到您的 pom.xml(Maven)文件中。

Maven 依赖配置:

  <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.12.15</version>
    </dependency>
</dependencies>

Java 设置接受 Excel 修订

“接受修订”意味着将 Excel 文件中所有被追踪的更改(如插入的行/列、修改的单元格内容、格式变化等)永久地应用到文档中,使其成为最终版本。这在审查者确认所有修改无误后非常有用。

以下是使用 Spire.XLS for Java 接受 Excel 文件中所有修订的 Java 代码示例:

import com.spire.xls.FileFormat;
import com.spire.xls.Workbook;

public class AcceptTrackedChanges {

    public static void main(String[] args) {

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

        //加载示例 Excel 文档
        wb.loadFromFile("test.xlsx");

        //确认工作簿是否已修订
        if (wb.hasTrackedChanges())
        {
            //接受修订
            wb.acceptAllTrackedChanges();
        }

        //保存文件
        wb.saveToFile("AcceptChanges.xlsx", FileFormat.Version2013);
    }
}

代码说明:

  • new Workbook():创建一个 Workbook 实例,用于操作 Excel 文件。
  • wb.loadFromFile("tracked_changes.xlsx"):加载指定路径的 Excel 文件。请确保该文件存在且包含修订。
  • wb.acceptAllTrackedChanges():这是核心方法,它会自动检测并接受工作簿中的所有修订。
  • wb.saveToFile("accepted_revisions.xlsx", ExcelVersion.Version2016):将接受修订后的工作簿保存为新的 Excel 文件。您可以选择不同的 ExcelVersion

运行此代码后,您将得到一个名为 AcceptChanges.xlsx 的新文件,其中所有修订都已应用,不再显示修订痕迹。

Java 设置拒绝 Excel 修订

与接受修订相反,拒绝修订意味着将 Excel 文件中所有被追踪的更改都恢复到修改前的状态,就好像这些更改从未发生过一样。这在审查者认为某些修改不符合要求,或者需要回溯到原始版本时非常有用。

以下是使用 Spire.XLS for Java 拒绝 Excel 文件中所有修订的 Java 代码示例:

import com.spire.xls.FileFormat;
import com.spire.xls.Workbook;

public class RejectTrackedChanges {

    public static void main(String[] args) {

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

        //加载示例 Excel 文档
        wb.loadFromFile("test.xlsx");

        //确认工作簿是否已修订
        if (wb.hasTrackedChanges())
        {
            //拒绝修订
            wb.rejectAllTrackedChanges();
        }

        //保存文件
        wb.saveToFile("RejectChanges.xlsx", FileFormat.Version2013);
    }
}

代码说明:

  • 代码结构与接受修订的示例类似。
  • wb.rejectAllTrackedChanges():这是核心方法,它会自动检测并拒绝工作簿中的所有修订,将文件恢复到修订前的状态。
  • wb.saveToFile("rejected_revisions.xlsx", ExcelVersion.Version2016):将拒绝修订后的工作簿保存为新的 Excel 文件。

运行此代码后,您将得到一个名为 RejectChanges.xlsx 的新文件,其中所有修订都被撤销,内容回到了最初的状态。

总结与展望

本文详细介绍了如何使用 Java 结合 Spire.XLS 库来自动化处理 Excel 文件中的修订,包括接受所有修订和拒绝所有修订。通过 Workbook 对象的 acceptAllTrackedChanges()rejectAllTrackedChanges() 方法,开发者可以轻松实现对 Excel 修订的批量管理,极大地提高了工作效率,减少了手动操作的繁琐和潜在错误。

掌握这一技术,对于需要频繁处理团队协作中带有修订痕迹的 Excel 文件的开发者而言,无疑是一项宝贵的技能。它不仅能够简化工作流程,还能确保数据处理的准确性和一致性。

到此这篇关于Java自动化设置接收或拒绝Excel文件修订的文章就介绍到这了,更多相关Java Excel修订内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java面向对象设计原则之迪米特法则介绍

    Java面向对象设计原则之迪米特法则介绍

    迪米特法则解决类与类之间耦合度问题,如果类A调用了B类的某一个方法,则这两个类就形成了一种紧耦合的方式,当B类这个方法发生变化时,一定会影响A类的执行结果。迪米特法则要求每一个类尽可能少的与其他类发生关系
    2023-02-02
  • Java中的输出格式化问题小结

    Java中的输出格式化问题小结

    在Java中,System.out.printf方法用于格式化输出,格式化字符串`%.6f`表示浮点数保留6位小数,其他格式化选项包括`%d`(整数)、`%s`(字符串)和`%e`(科学计数法),示例代码展示了如何使用这些格式化选项,感兴趣的朋友一起看看吧
    2025-02-02
  • Java中==与equals的区别小结

    Java中==与equals的区别小结

    这篇文章主要介绍了Java中==与equals的区别小结,本文总结结论:== 与 equals()比较的内容是不同的,equals()方式是String类中的方法,它用于比较两个对象引用所指的内容是否相等,而 == 比较的是两个对象引用的地址是否相等,需要的朋友可以参考下
    2015-06-06
  • Java中Arraylist动态扩容方法详解

    Java中Arraylist动态扩容方法详解

    ArrayList的列表对象实质上是存储在一个引用型数组里的,下面这篇文章主要给大家介绍了关于Java中Arraylist动态扩容方法的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
    2017-08-08
  • Java中单例模式的7种写法

    Java中单例模式的7种写法

    这篇文章主要介绍了Java中单例模式的7种写法,本文分别给出每种方式的实现代码,需要的朋友可以参考下
    2015-05-05
  • Java异常体系非正常停止和分类

    Java异常体系非正常停止和分类

    这篇文章主要介绍了Java异常体系非正常停止和分类,指的是程序在执行过程中,出现的非正常的情况,最终会导致JVM的非正常停止更多相关内容需要的朋友可以参考一下
    2022-06-06
  • 关于struts返回对象json格式数据的方法

    关于struts返回对象json格式数据的方法

    以下为大家介绍,关于struts返回对象json格式数据的方法,希望对有需要的朋友有所帮助。
    2013-04-04
  • JAVA hashCode使用方法详解

    JAVA hashCode使用方法详解

    本文详细解释了JAVA hashCode的使用方法,提供了测试hashCode和equals方法的使用实例
    2013-11-11
  • java数据类型转换之自动类型转换和强制类型转换详解

    java数据类型转换之自动类型转换和强制类型转换详解

    在 Java 中,数据类型转换用于将一种基本数据类型的值转换为另一种基本数据类型,主要分为自动类型转换(隐式转换) 和强制类型转换(显式转换) 两种,下面小编就为大家简单介绍一下吧
    2025-11-11
  • MyBatis5中Spring集成MyBatis事物管理

    MyBatis5中Spring集成MyBatis事物管理

    这篇文章主要介绍了MyBatis5中MyBatis集成Spring事物管理的相关资料,需要的朋友可以参考下
    2016-05-05

最新评论