IRONZIPの使用

VB .NETでZipファイルを抽出する方法

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

ZIPファイルは、複数のファイルを圧縮して1つのアーカイブにパッケージ化する一般的な方法です。ZIPアーカイブのような圧縮ファイルを扱うことは、ソフトウェア開発では一般的な作業です。 VB.NETでは、開発者はしばしばZIPファイルからデータを抽出する信頼性の高い効率的な方法を必要とします。 このプロセスを簡素化する強力なライブラリの一つがIronZIPです。 この記事では、IronZIPを使ってVB.NET (IronZIP for .NET)でZIPファイルを展開する方法について説明します。

VB.NETでZipファイルを解凍する方法

  1. IronZIPライブラリをインストールします。

  2. zipファイルを抽出するには、IronZipArchive.ExtractArchiveToDirectory()メソッドを使用します。

  3. パスワードで保護されたzipファイルを抽出するには、IronZipArchive.ExtractArchiveToDirectory() メソッドを使用します。

  4. GetArchiveEntryNames() メソッドを使用して、zipファイルのすべてのエントリを取得します。

IronZIPとは何ですか?

IronZIP、さまざまな開発ニーズに対応する.NETソフトウェアコンポーネントのコレクションです。 IronZIPは、その使いやすさ、パフォーマンス、幅広い圧縮・解凍機能のサポートで際立っています。

IronZIPの使用例

IronZIPの使用例をいくつか挙げよう:

  1. ファイル圧縮: IronZIP を使用してファイルのサイズを縮小し、ディスクスペースや帯域幅を節約できます。

  2. ファイル配布: IronZIPを使用して複数のファイルを1つのアーカイブにまとめることで、共有や転送を容易にします。

  3. ファイル暗号化: IronZIPを使用して、ファイルをパスワードとアクセス権限で保護し、不正アクセスや変更を防ぐことができます。

  4. ファイル抽出: IronZIP を使用して、ローカルファイル、ストリーム、URL などさまざまなソースから ZIP ファイルを開いて読み取り、内容やメタデータを抽出できます。

  5. ファイル管理:IronZIPを使用して、ZIPファイルを操作できます。たとえば、エントリの追加、削除、または結合、圧縮形式の変更、アーカイブの整合性の検証などが可能です。

IronZIPを始めよう

VB.NETプロジェクトでIronZIPを使い始めるには、IronZIPライブラリをインストールする必要がある。 NuGetパッケージ・マネージャー・コンソールやVisual StudioのNuGetパッケージ・マネージャーを使えば簡単にできる。

IronZIP NuGetパッケージのインストール

NuGet Package Managerコンソールに以下のコマンドを記述する。

Install-Package IronZip

コマンドを実行するにはEnterキーを押してください。 NuGetはIronZIPパッケージをダウンロードし、依存関係とともにインストールする。 コンソールにインストールの進行状況を示す出力が表示されます。

.NET Zipファイルを解凍する

それでは、IronZIPを使ってZIPファイルを解凍する簡単な方法を紹介しよう:

Imports IronZip
Module Program
    Sub Main(args As String())
       Dim extractpath = "D:\ExtractedFiles"
Dim zippath = "D:\Docs.zip"
IronZipArchive.ExtractArchiveToDirectory(zippath, extractpath)
    End Sub
End Module
Imports IronZip
Module Program
    Sub Main(args As String())
       Dim extractpath = "D:\ExtractedFiles"
Dim zippath = "D:\Docs.zip"
IronZipArchive.ExtractArchiveToDirectory(zippath, extractpath)
    End Sub
End Module
VB.NET

私たちは、ZIPアーカイブからすべてのエントリを指定されたディレクトリに抽出するIronZipArchiveクラスのExtractArchiveToDirectoryメソッドを使用しました。 このメソッドには2つの引数を渡します: ZIPファイルのパス(「D:\Docs.zip」)と、出力先ディレクトリのパス(「extracted」)。 ディレクトリを指定していないので、デフォルトのプログラムフォルダにファイルが展開されます。

出力

VB .NETでZipファイルを抽出する方法:図1 - デフォルトフォルダに抽出されたファイルの出力

同様に、TarGZip、およびBZip2ファイルも抽出できます。

パスワードで保護されたZIPアーカイブからすべてのファイルを取り出す

VB.NETでIronZIPを使ってパスワードで保護されたZIPアーカイブからすべてのファイルを取り出すには、次のコード・スニペットを使います。

Imports IronZip
Imports System
Module Program
    Sub Main(args As String())
        IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd")
    End Sub
End Module
Imports IronZip
Imports System
Module Program
    Sub Main(args As String())
        IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd")
    End Sub
End Module
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'@Imports IronZip @Imports System Module Program @Sub Main(args @As String()) IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd") @End @Sub @End Module
$vbLabelText   $csharpLabel

上記のVB.NETコードは、IronZIPライブラリを使用してパスワードで保護されたZIPアーカイブのアイテムを抽出します。これは、IronZipArchiveクラスのExtractArchiveToDirectoryメソッドを呼び出し、ZIPアーカイブ内のすべてのエントリを指定されたディレクトリに抽出します。 それはメソッドに3つの引数を渡します:ZIPファイルのフルパス(「PasswordProtectedZip.zip」)、宛先ディレクトリのパス(「extractedDocs」)、およびZIPファイルのパスワード(「myPassw0rd」)。

IronZIPはAES-128、AES-256、および従来の暗号化アルゴリズムをサポートしています。 パスワードが正しくないか、ZIPファイルが暗号化されていない場合、このメソッドは例外をスローします。 抽出されたファイルは以下の通り:

VB .NETでZipファイルを抽出する方法: 図2 - パスワードで保護された抽出ファイルの出力

ZIPファイルのエントリーを見る

IronZIPを使えば、圧縮ファイルのエントリーを簡単に見ることができる。以下のコードはZIPファイルを開き、そのエントリーをコンソールに表示する。

Sub Main(args As String())
    Dim startpath = "D:\Docs.zip"
    Using archive = New IronZipArchive(startPath)
        Dim names As List(Of String) = archive.GetArchiveEntryNames()
        For Each name As String In names
            Console.WriteLine(name)
        Next name
    End Using
End Sub
Sub Main(args As String())
    Dim startpath = "D:\Docs.zip"
    Using archive = New IronZipArchive(startPath)
        Dim names As List(Of String) = archive.GetArchiveEntryNames()
        For Each name As String In names
            Console.WriteLine(name)
        Next name
    End Using
End Sub
VB.NET

上記のVisual Basic .NETのコード・スニペットは、IronZIPライブラリを使ってZIPアーカイブ(IronZIP for .NET)のエントリーの名前を抽出します。このコードでは以下のことを行います:

ZIPファイル ("D:\Docs.zip") のパスをパラメーターとして渡し、IronZipArchive クラスの新しいインスタンスを作成します。 パラメータに特定のファイル名を渡すことができる。 これはZIPファイルを開き、その内容をメモリにロードする。 インスタンスはarchiveという変数に代入され、Usingステートメントでラップされる。

それはアーカイブオブジェクトのGetArchiveEntryNamesメソッドを呼び出し、ZIPアーカイブ内のすべてのエントリの名前を含む文字列のリストを返します。このリストは、namesという名前の変数に割り当てられます。 For Each ループを使用して名前のリストを反復処理し、Console.WriteLine メソッドを使用して各名前をコンソールに出力します。 ZIPアーカイブ内のファイルシステムとフォルダの名前が表示されます。

VB .NETでZipファイルを抽出する方法: 図3 - 前述のコード例の出力

結論

結論として、IronZIPはVB.NETでZIPアーカイブを扱うための強力なツールとして登場し、圧縮抽出、および操作のための豊富な機能を提供します。 その汎用性は基本的なものにとどまらず、開発者はパスワード保護、暗号化、効率的なファイル管理などの機能をシームレスに統合することができる。 提供されているサンプルを探求することで、あなたのVB.NETプロジェクトでIronZIPの可能性を最大限に引き出すことができます。

実証されたように、このライブラリは抽出プロセスを簡素化し、開発者がパスワードで保護されたZIPアーカイブを簡単に扱い、ファイルエントリーを表示し、さまざまな操作を簡単に実行できるようにする。 さらに、IronZIPはさまざまな圧縮形式と互換性があり、複数のプラットフォームをサポートしているため、さまざまな環境で作業する開発者にとって貴重な資産となる。 IronZIP は、彼らの要件に完全に一致する無料トライアルオプションを提供しています。

チャクニット・ビン
ソフトウェアエンジニア
ChaknithはIronXLとIronBarcodeで作業しています。彼はC#と.NETに深い専門知識を持ち、ソフトウェアの改善と顧客サポートを支援しています。ユーザーとの対話から得た彼の洞察は、より良い製品、文書、および全体的な体験に貢献しています。
< 以前
フォルダー内のファイルをC#を使用して圧縮する方法
次へ >
パスワード付きファイルをC#で圧縮する方法