透かしなしで本番環境でテストしてください。
必要な場所で動作します。
30日間、完全に機能する製品をご利用いただけます。
数分で稼働させることができます。
製品トライアル期間中にサポートエンジニアリングチームへの完全アクセス
ZIPファイルとは、ZIP形式で圧縮された1つ以上のファイルやフォルダを含むファイルです。 複数のファイルやフォルダを1つのファイルに圧縮してアーカイブする一般的な方法です。データサイズを小さくし、ディスクスペースを節約し、インターネット上でのファイル転送を容易にします。 この記事では、ZIPファイルをC#で扱う方法を、IronZIPライブラリを使用して学びます。 プログラムでZIPファイルを作成、読み込み、解凍、更新する方法や、暗号化、パスワード保護、圧縮レベルといったIronZIPの様々な機能を使用する方法を紹介します。 この記事を読み終わる頃には、IronZIPを使ってC#アプリケーションでZIPファイルを簡単に扱えるようになるだろう。
IronZIPをプロジェクトにインストールします。
ZIPファイルの作成
パスワードで保護されたZIPファイルの作成
ZIPファイルを展開する
パスワードで保護されたZIPファイルを解凍する
IronZIP は、プログラムでZIPファイルを作成、読み取り、抽出することができる強力で多用途なC# ZIPアーカイブライブラリです。 それは、ZIP、TAR、GZIP、およびBZIP2など、さまざまなアーカイブ形式をサポートしています。 また、パスワード保護、暗号化、圧縮レベルをサポートしています。 IronZIP は.NET 8、7、6、コア、スタンダード、フレームワークと互換性があります。
IronZIPは、ZIPファイルを扱う様々なユースケースや利点に対応します:
バックアップシステムの作成: 重要なファイルやフォルダを圧縮し、暗号化して ZIP アーカイブにまとめ、IronZIP を使用して安全な場所に保存することができます。 こうすることで、ディスク容量を節約し、不正アクセスからデータを守ることができる。
メール添付ファイルの送信: メール添付ファイルのサイズを減らすために、IronZIP を使用して ZIP ファイルに圧縮することができます。これにより、ファイルサイズ制限を超えることを避け、送信プロセスをスピードアップすることができます。
コードを書く前に、IronZIP NuGet PackageをC#プロジェクトにインストールする必要があります。 IronZIPは、NuGet経由で利用可能な一般的な圧縮ライブラリです。
IronZIPをインストールするには、Visual StudioのNuGetパッケージマネージャーコンソールを使用します。 以下のコマンドを実行してください:
Install-Package IronZip
または、公式のIronZIPウェブサイトから直接パッケージをダウンロードすることができます。インストール後、C#コードの先頭に次の名前空間を追加することで開始できます。
using IronZip;
using IronZip;
Imports IronZip
IronZIPを使えば、フォルダ内のZIPファイルを簡単に作成することができる。以下のコードは指定されたディレクトリのすべてのファイルをZIP圧縮します。
static void Main(string [] args)
{
string [] fileArray = Directory.GetFiles(@"D:\Docs\");
using (var archive = new IronZipArchive())
{
foreach (var file in fileArray)
{
// Add files to the ZIP
archive.Add(file);
}
// Export the ZIP
archive.SaveAs("myZipFile.zip");
}
}
static void Main(string [] args)
{
string [] fileArray = Directory.GetFiles(@"D:\Docs\");
using (var archive = new IronZipArchive())
{
foreach (var file in fileArray)
{
// Add files to the ZIP
archive.Add(file);
}
// Export the ZIP
archive.SaveAs("myZipFile.zip");
}
}
Shared Sub Main(ByVal args() As String)
Dim fileArray() As String = Directory.GetFiles("D:\Docs\")
Using archive = New IronZipArchive()
For Each file In fileArray
' Add files to the ZIP
archive.Add(file)
Next file
' Export the ZIP
archive.SaveAs("myZipFile.zip")
End Using
End Sub
上記のC#(シーシャープ)コードはIronZIPライブラリを使用して、すべてのファイルを1つのZIPファイルに圧縮します。このコードでは以下のことを行っている:
最後に、アーカイブオブジェクトのSaveAsメソッドを呼び出し、引数としてZIPファイルの名前("myZipFile.zip")を渡しました。 この方法は、ZIPアーカイブを現在のファイルシステム内のファイルに保存する。
このようにして、わずか数行のコードで簡単に新しいzipアーカイブを作成することができる。
出力は以下の通り:
IronZIPは、パスワードで保護されたZIPファイルを作成する最も簡単な方法を提供します。 以下のコード・サンプルは、ファイルを圧縮し、パスワード付きの新しいZIPファイルを作成します。
using (var archive = new IronZipArchive())
{
foreach (var file in fileArray)
{
// Add files to the ZIP
archive.Add(file);
}
// Set Password and Encryption Method
archive.Encrypt("myPa55word", EncryptionMethods.AES256);
// Export the ZIP
archive.SaveAs("myZipFile.zip");
}
using (var archive = new IronZipArchive())
{
foreach (var file in fileArray)
{
// Add files to the ZIP
archive.Add(file);
}
// Set Password and Encryption Method
archive.Encrypt("myPa55word", EncryptionMethods.AES256);
// Export the ZIP
archive.SaveAs("myZipFile.zip");
}
Using archive = New IronZipArchive()
For Each file In fileArray
' Add files to the ZIP
archive.Add(file)
Next file
' Set Password and Encryption Method
archive.Encrypt("myPa55word", EncryptionMethods.AES256)
' Export the ZIP
archive.SaveAs("myZipFile.zip")
End Using
archive.Encrypt("myPa55word", EncryptionMethods.AES256); IronZIPを使用してZIPアーカイブにパスワード("myPa55word")を設定します。これにより、AES-256暗号化をアーカイブに適用してセキュリティを強化し、正しいパスワードを持つユーザーのみがその内容にアクセスできるようにします。 この機能は、C#(シーシャープ)アプリケーション内での保存や転送中に機密データを保護するのに有効です。 第2パラメータに、暗号化アルゴリズムの指定モードを渡す必要がある。
ファイルは以下のように暗号化される。
ここまで、指定されたパスからディレクトリをループしてZIPファイルを作成するデモを見てきた。 では、ファイルを解凍する例を見てみよう。
IronZIPはC#(シーシャープ)でZIPアーカイブからファイルを抽出するメソッドを提供します。 以下のコードサンプルは、ZIPアーカイブ内の圧縮ファイルを展開します。
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles");
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles");
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles")
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles"); はIronZIPを使って "myZipFile.zip "からすべてのファイルを取り出し、"myExtractedFiles "ディレクトリに置きます。 この簡潔なメソッドは、C#(シーシャープ)でZIPアーカイブを抽出するプロセスを簡素化し、ファイル抽出タスクに便利なソリューションを提供します。
出力はこうだ:
IronZIPは、パスワードで保護されたZIPファイルを解凍する方法も提供します。 以下のコードは、IronZIPメソッドを使用して、指定されたZIPファイルから既存のすべてのファイルとディレクトリを展開します。
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles", "myPa55word");
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles", "myPa55word");
IronZipArchive.ExtractArchiveToDirectory("myZipFile.zip", "myExtractedFiles", "myPa55word")
IronZipArchive クラスの ExtractArchiveToDirectory メソッドは、ZIP アーカイブから指定したディレクトリにすべてのエントリを展開します。 そのメソッドには3つの引数が渡されます: ZIPファイルのパス(「myZipFile.zip」)、宛先ディレクトリのパス(「myExtractedFiles」)、およびZIPファイルのパスワード(「myPa55word」)。
この方法で、パスワードで保護されたzipファイルを簡単に取り出すことができる。
IronZIP は、既存のアーカイブにアクセスし、ファイル内に存在するすべてのエントリを表示する方法を提供します。
using (var archive = new IronZipArchive("myZipFile.zip", "myPa55word"))
{
// Get Entries list
List<string> names = archive.GetArchiveEntryNames();
foreach (string name in names)
{
Console.WriteLine(name);
}
}
using (var archive = new IronZipArchive("myZipFile.zip", "myPa55word"))
{
// Get Entries list
List<string> names = archive.GetArchiveEntryNames();
foreach (string name in names)
{
Console.WriteLine(name);
}
}
Using archive = New IronZipArchive("myZipFile.zip", "myPa55word")
' Get Entries list
Dim names As List(Of String) = archive.GetArchiveEntryNames()
For Each name As String In names
Console.WriteLine(name)
Next name
End Using
提供されたC#のコードは、"myPa55word "というパスワードで "myZipFile.zip "というZIPファイルをロードすることにより、安全なIronZIPArchiveインスタンスを作成するためにIronZIPを使用しています。 ファイルが暗号化されていない場合は、passwordパラメータを渡さないでください。 次に、暗号化されたZIPアーカイブ内のエントリ名(ファイル名およびフォルダー名)のリストを取得して印刷します。
GetArchiveEntryNamesメソッドでエントリー名を収集し、for-eachループでそれぞれの名前をコンソールに出力します。 これは、IronZIPがパスワードで保護されたZIPアーカイブからのセキュアなアクセスと簡潔な方法でのエントリ情報の検索を可能にすることを示しています。
結論として、IronZIPはZIPファイルを扱うための堅牢で多機能なC#ライブラリである。 その機能は基本的な圧縮や抽出を超え、パスワード保護、暗号化、さまざまなアーカイブ形式との互換性などを提供します。 バックアップシステムの作成、Eメールの添付ファイルの管理、ウェブからのファイルのダウンロードなど、IronZIPはこれらのタスクをシンプルかつ効率的に合理化します。
IronZIPをC# (シーシャープ)アプリケーションに統合することで、ZIPファイルの処理、データセキュリティの強化、ファイル転送プロセスの最適化のための強力なツールを得ることができます。 必要に応じて無料のトライアルを利用できます。