• Java 保护Excel 工作簿和工作表


    出于安全原因,可能需要保护整个工作簿或工作表。 有时,你甚至可能需要保护某个工作表,但保留指定的单元格进行编辑。 本文将介绍如何使用Free Spire.XLS for Java实现这些操作

     

    Spire.Xls.jar 添加为依赖项

    方法1:下载Free Spire.XLS for Java包并解压缩,然后从lib文件夹下,Spire.Xls.jar包作为依赖项添加Java应用程序中。

     

    方法2:如果要使用Maven,通过将以下配置添加到pom.xml文件中,就可以轻松将JAR包安装到的你的Maven项目中

     

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

    保护工作簿

    import com.spire.xls.*;
    
    public class EncryptWorkbook {
        public static void main(String[] args) {
            //加载示例文档
            Workbook workbook = new Workbook();
            workbook.loadFromFile("Sample.xlsx");
    
            //使用密码加密保护
            workbook.protect("abc123");
    
            //保存文档
            workbook.saveToFile("保护工作簿.xlsx", ExcelVersion.Version2010);
    
        }
    }

    保护工作表

    import com.spire.xls.*;
    import java.util.EnumSet;
    public class ProtectWorksheet { public static void main(String[] args) { //加载示例文档 Workbook workbook = new Workbook(); workbook.loadFromFile("Sample.xlsx"); //获取第一个工作表 Worksheet sheet = workbook.getWorksheets().get(0); //使用密码加密保护 sheet.protect("abc123", EnumSet.of(SheetProtectionType.All)); //保存文档 workbook.saveToFile("保护工作表.xlsx", ExcelVersion.Version2010); } }

     

     

    保护工作表但解锁某些单元格范围

    import com.spire.xls.*;
    import java.util.EnumSet;
    
    public class UnlockCell {
        public static void main(String[] args) {
            //加载示例文档
            Workbook workbook = new Workbook();
            workbook.loadFromFile("Sample.xlsx");
    
            //获取第一个工作表
            Worksheet sheet = workbook.getWorksheets().get(0);
    
            //密码加密保护工作表
            sheet.protect("abc123", EnumSet.of(SheetProtectionType.All));
    
            //解锁某些单元格
            sheet.getCellRange("A2:B11").getCellStyle().setLocked(false);
    
            //保存文档
            workbook.saveToFile("解锁单元格.xlsx", ExcelVersion.Version2016);
        }
    }

     

     

     

     

  • 相关阅读:
    【PMP】商业论证与效益管理文件
    【PMP】项目生命周期和开发生命周期
    【PMP】组织级项目管理(OPM)和战略
    【PMP】项目和运营的区别
    【PMP】项目、项目集、项目组合
    【PMP】项目的定义和特点
    c++ 调用模板函数时加template什么意思?
    散列表
    Windows消息机制详解
    python 获取当前目录下文件(转)
  • 原文地址:https://www.cnblogs.com/jazz-z/p/12714486.html
Copyright © 2020-2023  润新知