-1

可能重复:
如何使用 POI api 在 Java 中访问受密码保护的 Excel 工作簿

如何在 Java 中使用 Apache POI 打开受密码保护的 Word/Excel 文件?请写代码。

4

1 回答 1

1

Apache POI 支持读取加密的 XLSX 和 DOCX 文件。请参阅 Apache POI文档

你的代码应该是这样的:

 EncryptionInfo info = new EncryptionInfo(filesystem);
    Decryptor d = Decryptor.getInstance(info);

    try {
        if (!d.verifyPassword(password)) {
            throw new RuntimeException("Unable to process: document is encrypted");
        }

        InputStream dataStream = d.getDataStream(filesystem);
        HSSFWorkbook wb = new HSSFWorkbook(dataStream);
        // parse dataStream

    } catch (GeneralSecurityException ex) {
        throw new RuntimeException("Unable to process encrypted document", ex);
    }
于 2012-11-10T02:51:53.587 回答