详情

通常来说,对Excel文档进行爱护的办法有爱护整个工作簿或指定的工作表,以及标记最终状态,设置用户能够编辑区域等。本文将应用Free Spire.XLS for Java来演示如何给Excel工作簿或工作表加密以及移除密码保护。

Jar包获取及导入

在运行代码前,需先将Jar包导入IDEA中。

形式一:E-iceblue官网上下载Free Spire.XLS for Java产品包,解压后将lib文件夹下的Spire.Xls.jar手动导入IDEA中。导入步骤如下图。


形式二:通过Maven仓库装置导入产品及相干依赖。在IDEA中创立一个Maven我的项目,而后在pom.xml文件里键入以下代码,最初点击“Import Changes”即可。

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

代码演示

爱护工作簿

Free Spire.XLS for Java提供了work.protect()办法来设置密码保护工作簿,读者只有输出正确明码能力关上工作簿。

import com.spire.xls.*;public class ProtectWorkbook {    public static void main(String[] args) {        //创立Workbook实例 Workbook workbook = new Workbook();        //加载示例文档 workbook.loadFromFile("C:UsersTest1DesktopSample.xlsx");        //设置密码保护文档 workbook.protect("myexcel123");        //保留后果文档 workbook.saveToFile("output/ProtectWorkbook.xlsx", ExcelVersion.Version2013);    }}

效果图:

爱护工作表

与爱护工作簿类似,咱们能够利用sheet.protect()办法来对某个特定的工作表进行加密爱护,读者能够关上并查看工作表,但不能对其内容进行编辑操作。

import com.spire.xls.*;import java.util.EnumSet;public class ProtectWorksheet {    public static void main(String[] args) {        //创立Workbook实例 Workbook workbook = new Workbook();        //加载示例文档 workbook.loadFromFile("C:UsersTest1DesktopSample.xlsx");        //获取第一个工作表 Worksheet sheet = workbook.getWorksheets().get(0);        //应用明码加密爱护 sheet.protect("myworksheet123", EnumSet.of(SheetProtectionType.All));        //保留后果文档 workbook.saveToFile("output/ProtectWorksheet.xlsx", ExcelVersion.Version2010);    }}

效果图:

勾销密码保护工作簿
import com.spire.xls.*;public class UnprotectWb {    public static void main(String[] args) {        //加载文档 Workbook wb = new Workbook();        wb.setOpenPassword("myexcel123");//源文档明码 wb.loadFromFile("C:UsersTest1DesktopProtectWorkbook.xlsx");        //解除密码保护 wb.unProtect();        //保存文档 wb.saveToFile("output/UnprotectWb.xlsx");        wb.dispose();    }}
勾销密码保护工作表
import com.spire.xls.*;public class UnprotectWs {    public static void main(String[] args) {        //加载文档 Workbook  wb = new Workbook();        wb.loadFromFile("C:UsersTest1DesktopProtectWorksheet.xlsx");        //获取工作表 Worksheet sheet = wb.getWorksheets().get(0);        //解除密码保护(需输出源文档明码) sheet.unprotect("myworksheet123");        //保存文档 wb.saveToFile("output/UnprotectSheet.xlsx",ExcelVersion.Version2010);        wb.dispose();    }}

总结

Free Spire.XLS for Java除了加密工作簿或工作表来爱护Excel文档外,还反对设置用户可编辑区域,锁定特定单元格等。无关代码或产品导入问题,可在下方评论或私信。