Maison > Java > javaDidacticiel > Comment utiliser Java pour crypter et décrypter des fichiers Excel ?

Comment utiliser Java pour crypter et décrypter des fichiers Excel ?

PHPz
Libérer: 2023-05-08 14:58:08
avant
2432 Les gens l'ont consulté

Présentation

Lors de la configuration de la protection des fichiers Excel, vous pouvez généralement choisir de crypter l'intégralité du classeur et vous devez saisir un mot de passe lors de l'ouverture du fichier ou vous pouvez crypter la feuille de calcul spécifiée, c'est-à-dire définir le contenu du tableau ; en lecture seule et la feuille de calcul ne peut pas être modifiée. En outre, vous pouvez également définir la protection de zones spécifiques de la feuille de calcul, c'est-à-dire définir la zone spécifiée pour qu'elle soit modifiable ou masquer les formules de données pour protéger la source des informations sur les données. Lorsqu'il n'est pas nécessaire de définir la protection du document, la protection par mot de passe peut être révoquée, c'est-à-dire que le document peut être déchiffré.

Exemple de plan

1. ExcelCahier d'exercices

1.1 Cahier d'exercices crypté

1.2 Cahier d'exercices déchiffré

2. 2.2 Feuille de calcul cryptée Spécifiez la plage de données

2.3 Définissez la formule de la feuille de calcul pour qu'elle soit invisible

2.4 Décryptez la feuille de calcul Excel

Outil

Outil :

Free Spire Téléchargez le package jar, décompressez-le et importez le fichier jar dans le dossier lib dans le programme java ou téléchargez-le ; , installez-le et importez-le via le référentiel maven.

Remarque 2

 : Lors de la définition de la protection des feuilles de calcul ici, plusieurs types de protection différents peuvent être pris en charge (comme indiqué ci-dessous).

Comment utiliser Java pour crypter et décrypter des fichiers Excel ?Exemples de code Java

Exemple 1 Chiffrer le classeur

import com.spire.xls.*;

public class ProtectWb {
    public static void main(String[] args) {
        //加载测试文档
        Workbook wb = new Workbook();
        wb.loadFromFile("sample.xlsx");

        //使用密码加密工作簿
        wb.protect("123456");

        //保存文档
        wb.saveToFile("ProtectWorkbook.xlsx", ExcelVersion.Version2010);
        wb.dispose();
    }
}
Copier après la connexion
Résultats du chiffrement du classeur :

Comment utiliser Java pour crypter et décrypter des fichiers Excel ?Exemple 2 Décrypter le classeur

import com.spire.xls.*;

public class UnprotectWb {
    public static void main(String[] args) {
        //加载文档
        Workbook wb = new Workbook();
        wb.setOpenPassword("123456");//源文档密码
        wb.loadFromFile("ProtectWorkbook.xlsx");

        //解除密码保护
        wb.unProtect();

        //保存文档
        wb.saveToFile("UnprotectWb.xlsx");
        wb.dispose();
    }
}
Copier après la connexion

Exécutez le programme, le fichier du classeur généré ne sera plus protégé par mot de passe.

Exemple 3 Chiffrer la feuille de calcul

import com.spire.xls.*;

import java.util.EnumSet;

public class ProtectSheet {
    public static void main(String[] args) {
        //加载测试文档
        Workbook wb = new Workbook();
        wb.loadFromFile("sample.xlsx");

        //获取第一个工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        //使用密码加密保护
        sheet.protect("654321", EnumSet.of(SheetProtectionType.All));

        //保存文档
        wb.saveToFile("ProtectWorksheet.xlsx", ExcelVersion.Version2010);
        wb.dispose();
    }
}
Copier après la connexion

Résultat du cryptage de la feuille de calcul :

Comment utiliser Java pour crypter et décrypter des fichiers Excel ?

Exemple 4 Chiffrer la feuille de calcul pour spécifier la plage de données

import com.spire.xls.*;

import java.util.EnumSet;

public class ProtectRange {
    public static void main(String[] args) {
        //加载测试文档
        Workbook wb = new Workbook();
        wb.loadFromFile("sample.xlsx");

        //获取第一个工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        //密码加密工作表
        sheet.protect("123654", EnumSet.of(SheetProtectionType.All));
        //指定可编辑的区域
        sheet.addAllowEditRange("AllowEdit",sheet.getCellRange(3,1,11,8));

        //保存文档
        wb.saveToFile("ProtectRange.xlsx", ExcelVersion.Version2010);
        wb.dispose();
    }
}
Copier après la connexion

Spécifier le résultat du cryptage de la zone :

Exemple 5 Définir la formule de la feuille de calcul à masquer

import com.spire.xls.*;

import java.util.EnumSet;

public class ProtectAndHideFormula {
    public static void main(String[] args) {
        //加载文档
        Workbook  wb = new Workbook();
        wb.loadFromFile("sample.xlsx");

        //获取工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        //设置加密
        sheet.protect("123", EnumSet.of(SheetProtectionType.All));
        //隐藏公式
        sheet.getAllocatedRange().isFormulaHidden(true);

        //保存文档
        wb.saveToFile("HideFormula.xlsx",FileFormat.Version2010);
        wb.dispose();
    }
}
Copier après la connexion
Comment utiliser Java pour crypter et décrypter des fichiers Excel ? Définir la formule pour masquer les résultats :

Exemple 6 Décrypter la feuille de calcul Excel

import com.spire.xls.*;

public class UnprotectSheet {
    public static void main(String[] args) {
        //加载文档
        Workbook  wb = new Workbook();
        wb.loadFromFile("ProtectWorksheet.xlsx");

        //获取工作表
        Worksheet sheet = wb.getWorksheets().get(0);

        //解除密码保护(需输入源文档密码)
        sheet.unprotect("654321");

        //保存文档
        wb.saveToFile("UnprotectSheet.xlsx",ExcelVersion.Version2010);
        wb.dispose();
    }
}
Copier après la connexion
Comment utiliser Java pour crypter et décrypter des fichiers Excel ?Exécutez le programme et dans le document généré, la feuille de calcul spécifiée ne sera plus protégée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal