日本

C#を使用してZIPアーカイブ内のファイルを解凍します

以前の投稿では、Aspose.ZIP for .NETを使用して、ファイルとフォルダーをZIPアーカイブに圧縮するさまざまな方法を学習しました。この投稿では、C#を使用してZIPアーカイブ内のファイルを抽出または解凍する方法を紹介します。また、パスワードで保護された、またはAESで暗号化されたZIPアーカイブをプログラムで抽出する方法についても説明します。この記事は次のセクションに分かれています。 ファイルを解凍するC#API C#のZIPアーカイブ内のファイルを解凍します パスワードで保護されたZIPファイルを解凍します C#でAES暗号化ZIPファイルを抽出します ファイルを解凍するC#API 開始する前に、ダウンロードして、Aspose.ZIP for .NETを参照するか、プロジェクトでNuGet PackageManagerを使用してそのパッケージをインストールしたことを確認してください。 C#を使用してZIPファイルを解凍します ZIPファイルを解凍するプロセスは、次の2つの方法で実行できます。 各ファイルを個別にZIPで解凍します 指定したフォルダにファイルを解凍します 最初の方法では、ZIPアーカイブ内の各ファイルに明示的にアクセスして解凍できます。さらに、抽出プロセスの進行状況を印刷できます。一方、2番目の方法では、ファイルを指定されたフォルダーに解凍するだけです。 アーカイブ内の各ファイルを個別に抽出する 以下は、ファイルにアクセスして抽出し、抽出の進行状況をC#で出力する手順です。 ZIPアーカイブをFileStreamオブジェクトで開きます。 アーカイブのインスタンスをFileStreamオブジェクトで作成して初期化します。 Archive.Entriesコレクションを使用してZIP内のファイルにアクセスします。 ArchiveEntry.ExtractionProgressedイベントハンドラーを設定して、抽出の進行状況を出力します。 ArchiveEntry.Extract(string)メソッドを使用してファイルを抽出/解凍します。 次のコードサンプルは、C#を使用してZIPアーカイブ内のファイルを抽出する方法を示しています。 // ZIPファイルを開く using (FileStream zipFile = File.Open("compressed_files.zip", FileMode.Open)) { using (Archive archive = new Archive(zipFile, new ArchiveLoadOptions())) { // ZIPアーカイブの各エントリにアクセスする for (int i = 0; i < archive.Entries.Count; i++) { int percentReady = 0; // 抽出の進行状況をコンソールに記録します。 archive.Entries[i].ExtractionProgressed += (s, e) => { int percent = (int)((100 * e.
4月 23, 2020 · 1 分 · Usman Aziz