gpt4 book ai didi

java - 使用 Apache POI 对 .XLS Excel 文件进行密码保护

转载 作者:行者123 更新时间:2023-12-01 11:57:36 26 4
gpt4 key购买 nike

我正在使用 Apache POI 3.11,它应该支持密码保护 Excel 文件(XLS 和 XLSX 类型)。我可以轻松地使用 POI 使 XLSX 类型的加密正常工作,但我无法使用旧的 XLS 类型做到这一点。我已尝试使用以下代码执行此操作,但它所做的只是创建文件的副本,而不在其上设置密码。据我从示例和 API 中可以看出,这就是应该如何完成的,但我无法让它工作。

    HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(sourcePath));
Biff8EncryptionKey.setCurrentUserPassword("potato");
OutputStream os = new FileOutputStream(destinationPath);
wb.write(os);
os.flush();
os.close();

如有任何建议,我们将不胜感激。作为最后的手段,我也许可以使用不同的库,但我更喜欢使用 POI,因为这是我们用于与 Excel 相关的其他所有内容的库。

最佳答案

根据 Apache POI Encryption Supported Features Matrix ,HSSF 仅支持解密受已知密码保护的 .xls 文件。它不支持加密它们。 (XSSF 可以用于加密和解密 .xlsx 文件)

因此,如果您确实希望支持使用 Apache POI 的 HSSF 加密 .xls 文件,则需要 get involved with the project然后继续处理 submitting a patch对于这个缺失的功能!

关于java - 使用 Apache POI 对 .XLS Excel 文件进行密码保护,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28244163/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com