IRONZIPの使用

C# WindowsアプリケーションでZIPファイルを抽出する方法

チャクニット・ビン
チャクニット・ビン
2024年1月27日
共有:

ZIPファイルは、大量のファイルを1つの小さなパッケージに圧縮する能力により、データの保存と転送に不可欠なものとなりました。 ファイルを効率的に整理、共有、運搬する便利な方法を提供する。 ZIPファイルからの抽出は様々なアプリケーションで一般的なタスクであり、開発者はユーザーエクスペリエンスを向上させ、C# ZIP抽出におけるデータ管理を効率化するために、そのプロセスを理解する必要があります。

ZIPファイルは、いくつかの理由からコンピューティングの世界で広く使われている。 まず、複数のファイルを1つのファイルアーカイブに圧縮することができるため、ストレージ容量を削減し、迅速なデータ転送が可能になる。

さらに、ZIPファイルは、配布のためにファイルをパッケージ化する便利な方法として機能し、関連するすべてのファイルが一緒にバンドルされていることを保証します。 既存のZIPファイルを解凍することは、ユーザーがアーカイブ内に含まれるすべてのファイルのオリジナルバージョンにアクセスする必要がある場合に非常に重要です。

この記事では、IronZIPライブラリを使用して圧縮ファイルを抽出できるC# Windowsアプリケーションの作成に焦点を当てます。 Visual Studioで新しいWindowsアプリケーションをセットアップし、IronZIPをインストールし、1つのZIPファイルをブラウズして選択するフォームをデザインし、最後にIronZIPのメソッドを使ってファイル抽出機能を実装する。

C# WindowsアプリケーションでZIPファイルを抽出する方法

  1. Visual Studioで新しいC# Windowsアプリケーションプロジェクトを作成します。

  2. NuGetパッケージマネージャを使用してC# (シーシャープ)ZIP展開ライブラリIronZIPをインストールします。

  3. ボタン、テキストフィールド、ラベルを追加するフォームをデザインします。

  4. openFileDialog オブジェクトを使用してZIPファイルのパスを取得します。

  5. ZIPファイルからコンテンツを抽出し、ExtractArchiveToDirectory メソッドを使用して、保存先フォルダに保存します。

2.C#(シーシャープ)のIronZIPをご紹介します;

IronZIPは、多機能で豊富なC#ライブラリで、開発者にZIPファイルをシームレスに操作するためのツールを提供します。 ZIPアーカイブを作成、抽出、操作するための包括的な機能セットを提供し、ZIPファイルをサポートするアプリケーションを拡張したい開発者にとって最適な選択肢となります。 IronZIPはそのシンプルさ、柔軟性、パフォーマンスで知られており、多くのC#開発者にZIPファイル操作ソフトとして選ばれています。

3.Visual Studioで新しいWindowsアプリケーションを作成する

始めるには、Visual Studio を開き、新しい Windows Forms アプリケーションプロジェクトを作成します。

  1. Visual Studioを開く: コンピューターでVisual Studioを起動します。

  2. 新しいプロジェクトの作成: Visual Studioを開いたら、新しいプロジェクトを作成するオプションを選択します。

  3. Windows フォーム アプリケーションの選択: 新しいプロジェクト ダイアログで、「Windows フォーム アプリケーション」テンプレートを選択します。 このテンプレートはZIPファイル抽出アプリケーションの出発点となる。

  4. プロジェクト名を設定: プロジェクトの目的を反映した、意義があり説明的な名前を付けてください。 これは、プロジェクトを特定し、効果的に管理するのに役立つ。

  5. ターゲットフレームワークの選択: アプリケーションに適したターゲットフレームワークを選択してください。 この選択は、プロジェクトの互換性要件に依存する。

  6. 完了して作成: 使用しているVisual Studioのバージョンに応じて、「作成」または「完了」ボタンをクリックしてプロジェクトの作成プロセスを完了します。

4.IronZIPのインストール

コードに入る前に、IronZIP ライブラリをインストールする必要がある。 Visual Studio内のNuGet Package Managerを使用することで、これを簡単に行えます。 パッケージマネージャーコンソールを開き、以下のコマンドを実行する:

Install-Package IronZip

このコマンドは、IronZIPライブラリと、プロジェクトとのシームレスな統合に必要な依存関係をダウンロードしてインストールします。

5.ZIPファイル抽出用のフォームをデザインする

次に、ZIPファイル抽出アプリケーションのユーザーインターフェイスとなるシンプルなWindowsフォームをデザインします。 抽出プロセスをトリガーするためのButtonや、ユーザーが抽出したいZIPファイルをブラウズして選択できるFileDialogなどのコントロールを追加します。

C# WindowsアプリケーションでZIPファイルを抽出する方法: 図1 - ZIPファイルから抽出するためのWindowsフォームの例

5.1.ZIPファイルの閲覧と選択の構築

フォームのコンストラクタで、コントロールを初期化し、ボタンクリックとファイルダイアログのイベントハンドラを設定する:

private void button1_Click(object sender, EventArgs e)
{
    OpenFileDialog openFileDialog = new OpenFileDialog();
    openFileDialog.Title = "Select a File";
    if (openFileDialog.ShowDialog() == DialogResult.OK)
    {
        // Display the selected file path in a TextBox or perform any other action
        textBox1.Text = openFileDialog.FileName;
    }
}
private void button1_Click(object sender, EventArgs e)
{
    OpenFileDialog openFileDialog = new OpenFileDialog();
    openFileDialog.Title = "Select a File";
    if (openFileDialog.ShowDialog() == DialogResult.OK)
    {
        // Display the selected file path in a TextBox or perform any other action
        textBox1.Text = openFileDialog.FileName;
    }
}
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
	Dim openFileDialog As New OpenFileDialog()
	openFileDialog.Title = "Select a File"
	If openFileDialog.ShowDialog() = DialogResult.OK Then
		' Display the selected file path in a TextBox or perform any other action
		textBox1.Text = openFileDialog.FileName
	End If
End Sub
$vbLabelText   $csharpLabel

この C# コードは、Windows Forms アプリケーションでボタン「Browse」がクリックされたときにトリガーされるメソッド button1_Click を定義しています。 メソッド内で、新しいOpenFileDialogが作成され、タイトルを「ファイルを選択」に設定します。次に、ShowDialogメソッドを使用して、ファイルダイアログをユーザーに表示します。

ユーザーがファイルを選択して「OK」をクリックすると、選択されたファイルのファイルパスがopenFileDialog.FileNameを使用して取得されます。 その後、取得されたファイルパスはtextBox1という名前のTextBoxに割り当てられます。

5.2.抽出ロジックの実装

それでは、IronZIPを使用してZIPファイルの抽出処理を開始するボタン・クリック・イベントのコードを書いてみましょう。以下のコードをイベント・ハンドラに追加してください:

private void button2_Click(object sender, EventArgs e)
{
    try
    {
        IronZipArchive.ExtractArchiveToDirectory(textBox1.Text, "extracted");
        MessageBox.Show("File Successfully Unarchived", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
    }
    catch (Exception ex)
    {
        MessageBox.Show($"Error extracting ZIP file: {ex.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
    }
}
private void button2_Click(object sender, EventArgs e)
{
    try
    {
        IronZipArchive.ExtractArchiveToDirectory(textBox1.Text, "extracted");
        MessageBox.Show("File Successfully Unarchived", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
    }
    catch (Exception ex)
    {
        MessageBox.Show($"Error extracting ZIP file: {ex.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
    }
}
Private Sub button2_Click(ByVal sender As Object, ByVal e As EventArgs)
	Try
		IronZipArchive.ExtractArchiveToDirectory(textBox1.Text, "extracted")
		MessageBox.Show("File Successfully Unarchived", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information)
	Catch ex As Exception
		MessageBox.Show($"Error extracting ZIP file: {ex.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
	End Try
End Sub
$vbLabelText   $csharpLabel

上記のコードでは、抽出ボタンをクリックすると、IronZIPライブラリのExtractArchiveToDirectoryメソッドが使用され、パラメータで指定された「extracted」という名前の宛先フォルダに内容を抽出します。

抽出が成功すると、MessageBoxを使用して成功メッセージが表示されます。 抽出処理中にエラーが発生した場合、例外がキャッチされ、エラーメッセージが表示され、発生した問題についての貴重なフィードバックがユーザーに提供されます。 このコードにより、ユーザーはアプリケーション内で対話的にZIPファイルの抽出を開始することができます。

5.3.例の実行

プログラムを実行すると、フォームが表示される。

C# WindowsアプリケーションでZIPファイルを抽出する方法: 図2 - 生成されたWindowsフォーム

このフォームで「参照」ボタンをクリックする。 ファイル選択ダイアログが開きます。 ファイルを選択し、"開く "をクリックする。

C# WindowsアプリケーションでZIPファイルを抽出する方法: 図3 - 'Browse'をクリックした後のフォームのファイルセレクター

テキストボックスにファイル名と完全なパスが表示されます。

C# WindowsアプリケーションでZIPファイルを抽出する方法: 図4 - ファイルパスの表示

ここで、"Extract File "ボタンをクリックします。 ファイルが解凍され、保存され、成功通知が表示されます。

C# WindowsアプリケーションでZIPファイルを抽出する方法: 図5 - 抽出成功のメッセージボックス

次に、コード内で解凍したファイルに指定したパスに移動する。 私の場合は、プロジェクトファイルのルートフォルダにある「Extracted」という名前のフォルダだ。 ここに、解凍されたファイルがあります。

C# WindowsアプリケーションでZIPファイルを抽出する方法: 図6 - 抽出されたアーカイブエントリ

結論

この記事では、ZIPファイルの意義、その利点、そして様々なアプリケーションにおけるZIPファイルの抽出の重要性を探った。 私たちは、ZIPファイルを扱うための強力なC#ライブラリであるIronZIPを紹介しました。 IronZIPを使えば、ZIPファイルを作成したり、ZIPアーカイブからファイルを取り出したり、既存のZIPファイルを更新したりすることができます。

IronZIPを使用してZIPファイルを抽出するC# Windowsアプリケーションを作成するためのステップバイステップのガイドを提供しました。Visual Studioでの新規プロジェクトのセットアップ、NuGet経由でのIronZIPのインストールから、ユーザーフレンドリーなフォームの設計、抽出ロジックの統合まで、このチュートリアルは包括的な概要を提供している。

IronZIPの機能を活用することで、開発者はZIPアーカイブを効率的に扱うことができ、アプリケーション内のデータ管理とユーザー体験を向上させることができます。 ステップ・バイ・ステップの説明とコード・スニペットにより、開発者はZIPファイル抽出をシームレスに統合して実行する実践的なスキルを身につけることができ、C#(シーシャープ)プロジェクトにおけるファイル処理の効率化と整理に貢献します。

IronZIPは、その機能を試す素晴らしい機会を提供する無料トライアルを提供しています。 このリンクを訪れて、IronZIP、それの機能、およびZIPフォルダの抽出方法について詳しく学んでください。

チャクニット・ビン
ソフトウェアエンジニア
ChaknithはIronXLとIronBarcodeで作業しています。彼はC#と.NETに深い専門知識を持ち、ソフトウェアの改善と顧客サポートを支援しています。ユーザーとの対話から得た彼の洞察は、より良い製品、文書、および全体的な体験に貢献しています。
< 以前
C#で複数のファイルからZIPファイルを作成する方法
次へ >
ZipArchive C# (開発者チュートリアル)