我已經成功加密現有的Excel文件格式(.xlsx格式),但我不知道如何Encryt .xls格式的Excel文件.xls文件,到目前爲止,我已經壓縮然後加密.xls,但我想要加密Excel文件(.xls)。方式來加密(密碼保護),它已經創建
我已經使用POI進行這些操作。
if(!CSVToEXCEL.pw.equals("NA")){
if(CSVToEXCEL.oformat.equals("xlsx")){
POIFSFileSystem fs = new POIFSFileSystem();
EncryptionInfo info = new EncryptionInfo(fs, EncryptionMode.agile);
Encryptor enc = info.getEncryptor();
enc.confirmPassword(CSVToEXCEL.pw);
OPCPackage opc = OPCPackage.open(new File(CSVToEXCEL.opath), PackageAccess.READ_WRITE);
OutputStream os = enc.getDataStream(fs);
opc.save(os);
opc.close();
FileOutputStream fos = new FileOutputStream(CSVToEXCEL.opath);
fs.writeFilesystem(fos);
System.out.println("File created..."+CSVToEXCEL.opath);
fos.close();
}
else {
// if file is of '.xls' format
System.out.println("xls cannot be Encrypted...");
ZipAndProtectReport zipAndProtectReport = new ZipAndProtectReport();
String xlsoutputzip = zipAndProtectReport.ZipAndProtectMethod(CSVToEXCEL.opath,CSVToEXCEL.pw);
System.out.println("Zip Created..... path: "+xlsoutputzip);
}
}
else
System.out.println("File Created....."+CSVToEXCEL.opath);
}
CSVToEXCEL是類名,CSVToEXCEL.opath是輸出路徑位置,是CSVToEXCEL.pw密碼ZipAndProtectReport爲壓縮和然後密碼保護另一個類。
我想知道如何讓.xls在沒有壓縮的情況下進行密碼保護。
您是否試過閱讀關於密碼保護和加密的Apache POI文檔(https://poi.apache.org/encryption.html)?如果不是,當你做什麼時會發生什麼? – Gagravarr
是的,我已經讀過它,不工作。直到現在我發現只有一些EasyXLS API可以做到這一點。 –