目次
概要
サンプル アウトライン
ツール
数式非表示の結果の設定:
プログラムを実行すると、生成されたドキュメントで、指定されたワークシートは保護されなくなります。
ホームページ Java &#&チュートリアル Java を使用して Excel ファイルを暗号化および復号化するにはどうすればよいですか?

Java を使用して Excel ファイルを暗号化および復号化するにはどうすればよいですか?

May 08, 2023 pm 02:58 PM
excel java

概要

Excel ファイル保護を設定する場合、通常はワークブック全体を暗号化して保護することを選択でき、ファイルを開くときにパスワードを入力する必要があります。または、指定したワークシートを暗号化することもできます。つまり、テーブルの内容を読み取り専用に設定し、ワークシートを編集できなくなります。さらに、ワークシートの特定の領域に保護を設定することもできます。つまり、指定した領域を編集可能に設定したり、データ式を非表示にしてデータ情報のソースを保護したりできます。文書保護を設定する必要がない場合は、パスワード保護を解除する、つまり文書を復号化することができます。

サンプル アウトライン

1. Excelワークブック

1.1 暗号化されたワークブック

1.2 復号化ワークブック

2. Excelワークシート

2.1 ワークシートの暗号化

2.2 暗号化されたワークシートのデータ範囲の指定

2.3 ワークシートの数式を非表示に設定する

2.4 Excel ワークシートを復号化する

ツール

ツール:Free Spire.XLS for Java (無料バージョン)

注 1: 公式 Web サイトから jar パッケージをダウンロードし、解凍して lib フォルダー内の jar ファイルを Java プログラムにインポートするか、ダウンロードすることができます。 Maven ウェアハウスのインポートを通じてインストールします。

Java を使用して Excel ファイルを暗号化および復号化するにはどうすればよいですか?

注 2:ここでワークシート保護を設定すると、複数の異なる種類の保護をサポートできます (以下に示すように)。この記事では、例としてそのうちの 1 つを選択する方法を使用します。

Java を使用して Excel ファイルを暗号化および復号化するにはどうすればよいですか?

#Java コードの例

例 1 暗号化されたワークブック

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();
    }
}
ログイン後にコピー

ワークブックの暗号化結果:

Java を使用して Excel ファイルを暗号化および復号化するにはどうすればよいですか?

例 2 ワークブックの復号化

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();
    }
}
ログイン後にコピー

プログラムを実行すると、生成されたワークブック ファイルはパスワードで保護されなくなります。

例 3 暗号化されたワークシート

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();
    }
}
ログイン後にコピー

ワークシート暗号化結果:

Java を使用して Excel ファイルを暗号化および復号化するにはどうすればよいですか?

例 4 暗号化されたワークシート指定されたデータ範囲

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();
    }
}
ログイン後にコピー

指定された領域の暗号化結果:

Java を使用して Excel ファイルを暗号化および復号化するにはどうすればよいですか?#例 5 ワークシートの数式非表示の設定

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();
    }
}
ログイン後にコピー

数式非表示の結果の設定:

Java を使用して Excel ファイルを暗号化および復号化するにはどうすればよいですか?例 6 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();
    }
}
ログイン後にコピー

プログラムを実行すると、生成されたドキュメントで、指定されたワークシートは保護されなくなります。

以上がJava を使用して Excel ファイルを暗号化および復号化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Javaの平方根 Javaの平方根 Aug 30, 2024 pm 04:26 PM

Javaの平方根

Javaの完全数 Javaの完全数 Aug 30, 2024 pm 04:28 PM

Javaの完全数

Java の乱数ジェネレーター Java の乱数ジェネレーター Aug 30, 2024 pm 04:27 PM

Java の乱数ジェネレーター

Javaのアームストロング数 Javaのアームストロング数 Aug 30, 2024 pm 04:26 PM

Javaのアームストロング数

ジャワのウェカ ジャワのウェカ Aug 30, 2024 pm 04:28 PM

ジャワのウェカ

Javaのスミス番号 Javaのスミス番号 Aug 30, 2024 pm 04:28 PM

Javaのスミス番号

Java Springのインタビューの質問 Java Springのインタビューの質問 Aug 30, 2024 pm 04:29 PM

Java Springのインタビューの質問

Java 8 Stream Foreachから休憩または戻ってきますか? Java 8 Stream Foreachから休憩または戻ってきますか? Feb 07, 2025 pm 12:09 PM

Java 8 Stream Foreachから休憩または戻ってきますか?

See all articles