MS Excel offre un’ampia gamma di funzionalità per conservare e analizzare i dati senza interruzioni. Puoi eseguire calcoli, generare grafici e definire la tua logica personalizzata utilizzando i moduli VBA. Conoscendo l’importanza dei dati nei fogli di calcolo, MS Excel consente di proteggere le cartelle di lavoro utilizzando la crittografia. Inoltre, puoi proteggere con password i file Excel per evitare accessi non autorizzati. In conformità con ciò, questo articolo spiega come crittografare/decodificare e proteggere con password i file Excel utilizzando Java.
- API Java per crittografare e decrittografare i file Excel
- Crittografa i file Excel utilizzando Java
- Decrittografa i file Excel utilizzando Java
- Verifica la password del file Excel crittografato
- Ottieni la licenza API gratuita
API Java per crittografare e decrittografare i file Excel
Aspose.Cells for Java è una potente API per la manipolazione di fogli di calcolo che ti consente di creare e manipolare file Excel senza problemi. Inoltre, consente di crittografare e decrittografare le cartelle di lavoro in poche righe di codice. Inoltre, puoi proteggere un file Excel con una password. Aspose.Cells per Java può essere scaricato come JAR o installato utilizzando le seguenti configurazioni Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-cells</artifactId>
<version>20.12</version>
</dependency>
Crittografa i file Excel utilizzando Java
Aspose.Cells per Java fornisce i seguenti tipi di crittografia per i file di Excel 2003.
- XOR
- COMPATIBILE (Office 97/2000 compatible)
- FORNITORE CRITTOGRAFICO AVANZATO V1
- FORTE FORNITORE DI CRITTOGRAFIA
Tuttavia, le cartelle di lavoro 2007/2010 vengono crittografate utilizzando le tecniche di crittografia SHA e AES allo stesso modo di MS Excel. Di seguito sono riportati i passaggi per crittografare un file Excel utilizzando Aspose.Cells per Java.
- Carica il file Excel usando la classe Cartella di lavoro.
- Impostare la password utilizzando il metodo Workbook.getSettings().setPassword(string).
- Crittografa il file Excel utilizzando il metodo Workbook.setEncryptionOptions(EncryptionType, int).
- Salva la cartella di lavoro crittografata utilizzando il metodo Workbook.save(string).
A scopo dimostrativo, l’esempio di codice seguente mostra come crittografare un file Excel utilizzando Java.
// Crea un'istanza di un oggetto cartella di lavoro tramite il percorso del file excel
Workbook workbook = new Workbook("workbook.xlsx");
// Proteggi il file con password
workbook.getSettings().setPassword("1234");
// Crittografa specificando il tipo di crittografia
workbook.setEncryptionOptions(EncryptionType.XOR, 40);
// Specificare il tipo di crittografia avanzata (RC4,Microsoft Strong Cryptographic Provider)
workbook.setEncryptionOptions(EncryptionType.STRONG_CRYPTOGRAPHIC_PROVIDER, 128);
// Salva il file Excel crittografato
workbook.save("encrypted-workbook.xlsx");
Decrittografa i file Excel utilizzando Java
Per decrittografare un file Excel crittografato, devi solo fornire la sua password e il resto sarà gestito da Aspose.Cells per Java. Di seguito sono riportati i passaggi per decrittografare un file Excel utilizzando Java.
- Crea un’istanza della classe LoadOptions.
- Specificare la password utilizzando il metodo LoadOptions.setPassword(string).
- Crea un’istanza della classe Workbook e passa il percorso del file e l’oggetto LoadOptions al suo costruttore.
- Impostare la password su null utilizzando il metodo Workbook.getSettings().setPassword(string).
- Al termine, salva la cartella di lavoro decrittografata utilizzando il metodo Workbook.save(string).
L’esempio di codice seguente mostra come decrittografare un file Excel protetto da password utilizzando Java.
// Inizializza le opzioni di caricamento
LoadOptions loadOptions = new LoadOptions(LoadFormat.XLSX);
// Imposta la password originale
loadOptions.setPassword("1234");
// Crea un'istanza di un oggetto cartella di lavoro con il percorso del file Excel
Workbook workbook = new Workbook("encrypted-workbook.xlsx", loadOptions);
// Imposta la password su null
workbook.getSettings().setPassword(null);
// Salva il file Excel decrittografato
workbook.save("decrypted-workbook.xlsx");
Verifica la password di un file Excel crittografato
Oltre alla crittografia/decrittografia, Aspose.Cells per Java consente anche di verificare la password di un file Excel protetto. Di seguito sono riportati i passaggi per eseguire la verifica della password.
- Carica il file Excel crittografato utilizzando la classe FileInputStream.
- Utilizzare il metodo FileFormatUtil.verifyPassword(FileInputStream, string) per verificare la password.
- Di conseguenza, se il valore restituito è true, la password è valida, altrimenti non è valida.
L’esempio di codice seguente mostra come verificare la password di un file Excel crittografato utilizzando Java.
// Crea un oggetto Stream
FileInputStream fstream = new FileInputStream("encrypted-workbook.xlsx");
// Verifica la password
boolean isPasswordValid = FileFormatUtil.verifyPassword(fstream, "1234");
// Stampa i risultati
System.out.println("Password is Valid: " + isPasswordValid);
Ottieni una licenza API gratuita
Nel caso in cui desideri provare l’API senza limitazioni di valutazione, puoi ottenere una licenza temporanea gratuita.
Conclusione
In questo articolo, hai imparato come crittografare o decrittografare i file Excel utilizzando Java. Inoltre, hai visto come verificare la password di un file Excel crittografato. Nel caso in cui desideri esplorare di più sull’API di manipolazione del foglio di calcolo Java, visita la documentazione.