一、概述
本文介紹通過Java程序來實現Excel文檔加密以及解密的方法,包括對Excel工作簿加密、解密,對指定工作表加密、解密。程序中使用了免費版Java Excel類庫(Free Spire.XLS for Java),可以通過官網下載文件包,並將lib文件夾中的jar文件導入程序;或者通過maven倉庫導入,maven倉庫路徑配置和依賴添加,可參考教程文章。Jar文件導入效果如下:
二、代碼示例
1. 加密、解密Excel工作簿
1.1 加密工作簿
import com.spire.xls.*;
public class EncryptWorkbook {
public static void main(String[] args) {
//加載Excel文檔
Workbook wb = new Workbook();
wb.loadFromFile("test.xlsx");
//加密工作簿
wb.protect("123");
//保存文檔
wb.saveToFile("ProtectWorkbook.xlsx");
}
}
1.2 解密工作簿
import com.spire.xls.*;
public class DecryptWorkbook {
public static void main(String[] args) {
//加載文檔
Workbook wb = new Workbook();
wb.setOpenPassword("123");
wb.loadFromFile("ProtectWorkbook.xlsx");
//解除密碼保護
wb.unProtect();
//保存文檔
wb.saveToFile("UnProtectWorkbook.xlsx");
wb.dispose();
}
}
- 加密、解密Excel工作表
2.1 加密工作表
import com.spire.xls.*;
public class EncryptWorksheet {
public static void main(String[] args) {
//加載Excel文檔
Workbook wb = new Workbook();
wb.loadFromFile("test.xlsx");
//獲取工作表,加密
Worksheet sheet = wb.getWorksheets().get(0);
sheet.protect("123");
//保存文檔
wb.saveToFile("ProtectSheet.xlsx",FileFormat.Version2013);
wb.dispose();
}
}
2.2 解密工作表
import com.spire.xls.*;
public class DecryptWorksheet {
public static void main(String[] args) {
//加載文檔
Workbook wb = new Workbook();
wb.loadFromFile("ProtectWorkbook.xlsx");
//獲取工作表
Worksheet sheet = wb.getWorksheets().get(0);
//解除工作表的密碼保護
sheet.unprotect("123");
//保存文檔
wb.saveToFile("UnProtectSheet.xlsx");
wb.dispose();
}
}
(本文完)