Aspose.Cells功能演示:使用Java加密和解密Excel文件
MS Excel提供了廣泛的功能,可以無(wú)縫保存和分析數(shù)據(jù)。可以使用VBA模塊執(zhí)行計(jì)算,生成圖表以及定義自定義邏輯。知道電子表格中數(shù)據(jù)的重要性,MS Excel允許您使用加密保護(hù)工作簿。此外,也可以用密碼保護(hù)Excel文件,以避免未經(jīng)授權(quán)的訪問(wèn)。因此,本文介紹了如何使用Java加密/解密和密碼保護(hù)Excel文件。
- 使用Java加密Excel文件
- 使用Java解密Excel文件
- 驗(yàn)證加密的Excel文件的密碼
Aspose.Cells for Java是功能強(qiáng)大的電子表格處理API,可讓您無(wú)縫創(chuàng)建和處理Excel文件。此外,它使您可以在幾行代碼中對(duì)工作簿進(jìn)行加密和解密。此外,您可以使用密碼保護(hù)Excel文件。點(diǎn)擊下方按鈕可下載試用。
使用Java加密Excel文件
Aspose.Cells for Java為Excel 2003文件提供了以下加密類型。
- XOR
- COMPATIBLE (Office 97/2000 compatible)
- ENHANCED CRYPTOGRAPHIC PROVIDER V1
- STRONG CRYPTOGRAPHIC PROVIDER
但是,以MS Excel相同的方式使用SHA和AES加密技術(shù)對(duì)2007/2010工作簿進(jìn)行加密。以下是使用Aspose.Cells for Java加密Excel文件的步驟。
- 使用Workbook類加載Excel文件。
- 使用Workbook.getSettings()。setPassword(string)方法設(shè)置密碼。
- 使用Workbook.setEncryptionOptions(EncryptionType,int)方法加密Excel文件。
- 使用Workbook.save(string)方法保存加密的工作簿。
為了演示,下面的代碼示例演示如何使用Java加密Excel文件。
// Instantiate a Workbook object by excel file path Workbook workbook = new Workbook("workbook.xlsx"); // Password protect the file workbook.getSettings().setPassword("1234"); // Encrypt by specifying the encryption type workbook.setEncryptionOptions(EncryptionType.XOR, 40); // Specify Strong Encryption type (RC4,Microsoft Strong Cryptographic Provider) workbook.setEncryptionOptions(EncryptionType.STRONG_CRYPTOGRAPHIC_PROVIDER, 128); // Save the encrypted Excel file workbook.save("encrypted-workbook.xlsx");
使用Java解密Excel文件
為了解密加密的Excel文件,您只需要提供其密碼,其余的將由Aspose.Cells for Java處理。以下是使用Java解密Excel文件的步驟。
- 創(chuàng)建LoadOptions類的實(shí)例。
- 使用LoadOptions.setPassword(string)方法指定密碼。
- 創(chuàng)建Workbook類的實(shí)例,然后將文件的路徑和LoadOptions對(duì)象傳遞給其構(gòu)造函數(shù)。
- 使用Workbook.getSettings()。setPassword(string)方法將密碼設(shè)置為null。
- 完成后,使用Workbook.save(string)方法保存解密的工作簿。
下面的代碼示例演示如何使用Java解密受密碼保護(hù)的Excel文件。
// Initialize loading options LoadOptions loadOptions = new LoadOptions(LoadFormat.XLSX); // Set original password loadOptions.setPassword("1234"); // Instantiate a Workbook object with Excel file's path Workbook workbook = new Workbook("encrypted-workbook.xlsx", loadOptions); // Set password to null workbook.getSettings().setPassword(null); // Save the decrypted Excel file workbook.save("decrypted-workbook.xlsx");
驗(yàn)證加密的Excel文件的密碼
除了加密/解密,Aspose.Cells for Java還允許您驗(yàn)證受保護(hù)的Excel文件的密碼。以下是執(zhí)行密碼驗(yàn)證的步驟。
- 使用FileInputStream類加載加密的Excel文件。
- 使用FileFormatUtil.verifyPassword(FileInputStream,string)方法驗(yàn)證密碼。
- 結(jié)果,如果返回值為true,則密碼有效,否則無(wú)效。
下面的代碼示例演示如何使用Java驗(yàn)證加密的Excel文件的密碼。
// Create a Stream object FileInputStream fstream = new FileInputStream("encrypted-workbook.xlsx"); // Verify password boolean isPasswordValid = FileFormatUtil.verifyPassword(fstream, "1234"); // Print results System.out.println("Password is Valid: " + isPasswordValid);
如果您有任何疑問(wèn)或需求,請(qǐng)隨時(shí)加入Aspose技術(shù)交流群(761297826),我們很高興為您提供查詢和咨詢。