Protéger les fichiers Excel en Java

Les fichiers Excel sont utilisés pour stocker des données de petite et de grande taille sous forme de lignes et de colonnes. Outre le stockage des données, vous pouvez effectuer d’autres opérations telles que des calculs et des analyses de données à l’aide de graphiques et de diagrammes. Puisque les données valent la peine d’être protégées, MS Excel vous permet de protéger les fichiers Excel. Cet article explique comment automatiser la protection des fichiers MS Excel par programme. En particulier, vous apprendrez comment protéger et déprotéger des fichiers Excel à l’aide de Java.

API Java pour protéger les fichiers Excel

Aspose.Cells for Java est une API de manipulation de feuille de calcul bien connue conçue pour créer, modifier et convertir des fichiers Excel à partir des applications Java. Outre d’autres fonctionnalités d’automatisation Excel de base et avancées, Aspose.Cells prend en charge la protection des fichiers Excel. Vous pouvez soit télécharger le JAR de l’API ou l’installer à l’aide de la configuration Maven suivante.

<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>

Protéger les fichiers Excel à l’aide de Java

Aspose.Cells for Java fournit les types de protection suivants afin de protéger les classeurs Excel.

  • TOUT - User cannot modify anything
  • CONTENU - User cannot enter data
  • OBJETS - User cannot modify drawing objects
  • SCÉNARIOS - User cannot modify saved scenarios
  • STRUCTURE - User cannot modify saved structure
  • LES FENÊTRES - User cannot modify saved windows
  • RIEN - No protection

Voici les étapes pour protéger un fichier Excel à l’aide d’Aspose.Cells for Java.

L’exemple de code suivant montre comment protéger un fichier Excel en Java.

// Ouvrir le fichier Excel
Workbook workbook = new Workbook("workbook.xlsx");

// Protéger le classeur en spécifiant le type de protection
workbook.protect(ProtectionType.ALL, "12345");

// Enregistrez le fichier
workbook.save("workbook_protected.xlsx");

Déprotéger les fichiers Excel à l’aide de Java

Voici les étapes pour déprotéger un fichier Excel protégé par mot de passe à l’aide d’Aspose.Cells for Java.

L’exemple de code suivant montre comment déprotéger un fichier Excel en Java.

// Ouvrir le fichier Excel
Workbook workbook = new Workbook("workbook_protected.xlsx");

// Déprotéger le classeur
workbook.unprotect("12345");

// Définir le mot de passe sur null
workbook.getSettings().setPassword(null);

// Enregistrez le fichier
workbook.save("workbook_unprotected.xlsx");

Protéger les feuilles de calcul Excel à l’aide de Java

Vous pouvez également appliquer une protection au niveau de la feuille de calcul. Voici les étapes pour protéger une feuille de calcul Excel à l’aide d’Aspose.Cells for Java.

L’exemple de code suivant montre comment protéger une feuille de calcul Excel à l’aide de Java.

// Ouvrir le fichier Excel
Workbook workbook = new Workbook("workbook.xlsx");

// Accéder à la première feuille de calcul du fichier Excel
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.get(0);

Protection protection = worksheet.getProtection();

// Les 3 méthodes suivantes sont uniquement pour Excel 2000 et les formats antérieurs
protection.setAllowEditingContent(false);
protection.setAllowEditingObject(false);
protection.setAllowEditingScenario(false);

// Protégez la première feuille de calcul avec un mot de passe "1234"
protection.setPassword("1234");

// Enregistrez le fichier
workbook.save("Excel.xlsx");

Déprotéger les feuilles de calcul à l’aide de Java

La procédure pour déprotéger une feuille de calcul est la même que pour en protéger une. La seule différence est que vous utiliserez la méthode Worksheet.unprotect(String). L’exemple de code suivant montre comment déprotéger une feuille de calcul Excel à l’aide de Java.

// Ouvrir le fichier Excel
Workbook workbook = new Workbook("workbook.xlsx");

// Accéder à la première feuille de calcul du fichier Excel
WorksheetCollection worksheets = workbook.getWorksheets();
Worksheet worksheet = worksheets.get(0); 

// Déprotéger la feuille de calcul
worksheet.unprotect("12345");

// Enregistrez le fichier
workbook.save("workbook_updated.xlsx");

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire gratuite afin d’essayer les API sans limitation d’évaluation.

Conclusion

Dans cet article, vous avez appris comment protéger et déprotéger des fichiers Excel à l’aide de Java. De plus, vous avez vu comment protéger et déprotéger une feuille de calcul particulière dans un classeur Excel. Vous pouvez en savoir plus sur l’API d’automatisation Java Excel à l’aide de documentation.

Voir également