Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I use Apache POI library for Excel in java. I need open xlsx file with password. Why I have this error: "Exception in thread "main" org.apache.poi.EncryptedDocumentException: Export Restrictions in place - please install JCE Unlimited Strength Jurisdiction Policy files". I tryed install this files. But this didn't solve the problem.

public static void ReadFromExcell(String file) throws IOException, GeneralSecurityException {
    String excelFilePath = "ServerList.xlsx";

    try {
        NPOIFSFileSystem fileSystem = new NPOIFSFileSystem(new File(excelFilePath));
        EncryptionInfo info = new EncryptionInfo(fileSystem);
        Decryptor decryptor = Decryptor.getInstance(info);

        if (!decryptor.verifyPassword("qwerty")) {
            System.out.println("Unable to process: document is encrypted.");
            return;
        }

        InputStream dataStream = decryptor.getDataStream(fileSystem);

        Workbook workbook = new XSSFWorkbook(dataStream);
        Sheet firstSheet = workbook.getSheetAt(0);
        Iterator<Row> iterator = firstSheet.iterator();

        while (iterator.hasNext()) {
            Row nextRow = iterator.next();
            Iterator<Cell> cellIterator = nextRow.cellIterator();

            while (cellIterator.hasNext()) {
                Cell cell = cellIterator.next();
                System.out.print(cell.getStringCellValue() + "	");
            }
            System.out.println();
        }

        workbook.close();
        dataStream.close();
        fileSystem.close();
    } catch (GeneralSecurityException | IOException ex) {
        ex.printStackTrace();
    }
}

enter image description here

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
375 views
Welcome To Ask or Share your Answers For Others

1 Answer

I found a solution to the problem. I replaced the files only in the folder "jre". It is also necessary to replace the files in the folder "jdk".


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...