admin管理员组

文章数量:1589945

加密Excel通常有三种方式:保护文档、仅加密其中某个工作表、锁定某些单元格不能编辑。我使用了Spire.XLS for Java类库分别实现了以上三种加密方式。提供以下代码供参考。

保护文档import com.spire.xls.*;

public class EncryptWorkbook {

public static void main(String[] args) {

//加载示例文档

Workbook workbook = new Workbook();

workbook.loadFromFile("Sample.xlsx");

//使用密码加密保护

workbook.protect("eiceblue");

//保存文档

workbook.saveToFile("output/EncryptWorkbook.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("TestPassword", EnumSet.of(SheetProtectionType.All));

//保存文档

workbook.saveToFile("output/ProtectWorksheet.xlsx", ExcelVersion.Version2010);

}

}

锁定某些区域不可编辑import com.spire.xls.*;

import java.util.EnumSet;

public class ProtectCell {

public static void main(String[] args) {

//加载示例文档

Workbook workbook = new Workbook();

workbook.loadFromFile("Sample.xlsx");

//获取第一个工作表

Worksheet sheet = workbook.getWorksheets().get(0);

//保护行与列

sheet.getCellRange("B3").getCellStyle().setLocked(true);

sheet.getCellRange("C3").getCellStyle().setLocked(false);

//密码加密保护工作表

sheet.protect("TestPassword", EnumSet.of(SheetProtectionType.All));

//保存文档

workbook.saveToFile("output/ProtectCell.xlsx", ExcelVersion.Version2010);

}

}

本文标签: JavaExcel