USING IRONZIP

How to Extract Zip Files in VB .NET

Zip files are a popular way to compress and package multiple files into a single archive. Working with compressed files, such as ZIP archives, is a common task in software development. In VB.NET, developers often need a reliable and efficient way to extract data from ZIP files. One powerful library that simplifies this process is IronZIP. In this article, we'll explore using IronZIP to extract ZIP files in VB.NET.

How to Extract Zip Files in VB.NET

  1. Install IronZIP Library.
  2. Use IronZipArchive.ExtractArchiveToDirectory() method to extract ZIP files.
  3. Use IronZipArchive.ExtractArchiveToDirectory() method to extract password-protected ZIP files.
  4. Use the GetArchiveEntryNames() method to get all the entries of the ZIP file.

What is IronZIP?

IronZIP, a collection of .NET software components for various development needs. IronZIP stands out for its ease of use, performance, and support for a wide range of compression and decompression features.

Use Cases of IronZIP

Some use cases of IronZIP are:

  1. File compression: You can use IronZIP to reduce the size of your files and save disk space or bandwidth.
  2. File distribution: You can use IronZIP to bundle multiple files into a single archive, making sharing or transferring them easier.
  3. File encryption: You can use IronZIP to protect your files with passwords and permissions, and prevent unauthorized access or modification.
  4. File extraction: You can use IronZIP to open and read ZIP files from various sources, such as local files, streams, or URLs, and extract the contents or metadata.
  5. File management: You can use IronZIP to manipulate ZIP files, such as adding, deleting, or merging entries, changing compression formats, or validating the integrity of the archive.

Getting Started with IronZIP

To begin using IronZIP in your VB.NET project, we'll need to install the IronZIP library. We can easily do this by using NuGet Package Manager Console or Visual Studio's NuGet Package Manager.

Install IronZIP NuGet Package

Write the following command in the NuGet Package Manager Console:

Install-Package IronZip

Press Enter to execute the command. NuGet will download and install the IronZIP package along with its dependencies. You'll see output in the console indicating the progress of the installation.

VB.NET Extract Zip file

Now, let's explore a simple way to extract ZIP files using IronZIP:

Imports IronZip

Module Program
    Sub Main(args As String())
        ' Set paths for the ZIP file and the extraction directory
        Dim extractPath As String = "D:\ExtractedFiles"
        Dim zipPath As String = "D:\Docs.zip"

        ' Extract the ZIP file to the specified directory
        IronZipArchive.ExtractArchiveToDirectory(zipPath, extractPath)
    End Sub
End Module
Imports IronZip

Module Program
    Sub Main(args As String())
        ' Set paths for the ZIP file and the extraction directory
        Dim extractPath As String = "D:\ExtractedFiles"
        Dim zipPath As String = "D:\Docs.zip"

        ' Extract the ZIP file to the specified directory
        IronZipArchive.ExtractArchiveToDirectory(zipPath, extractPath)
    End Sub
End Module
VB .NET

We have used the ExtractArchiveToDirectory method of the IronZipArchive class, which extracts all the entries from a ZIP archive to a specified directory. It passes two arguments to the method: the path of the ZIP file (“D:\Docs.zip”) and the path of the destination directory (“D:\ExtractedFiles”). If different directories are not specified, it will extract files into the default program folder.

Output

How to Extract Zip Files in VB .NET: Figure 1 - The output of the extracted files in the default folder

Similarly, we can also extract Tar, GZip, and BZip2 files.

Extract all the Files from Password-Protected ZIP Archive

To extract all files from a password-protected ZIP archive using IronZIP in VB.NET, we can use the following code snippet:

Imports IronZip

Module Program
    Sub Main(args As String())
        ' Extract password-protected ZIP archive using a password
        IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd")
    End Sub
End Module
Imports IronZip

Module Program
    Sub Main(args As String())
        ' Extract password-protected ZIP archive using a password
        IronZipArchive.ExtractArchiveToDirectory("PasswordProtectedZip.zip", "extractedDocs", "myPassw0rd")
    End Sub
End Module
VB .NET

The above VB.NET code uses the IronZIP library to extract items of a password-protected ZIP archive. It calls the ExtractArchiveToDirectory method of the IronZipArchive class, which extracts all the entries from a ZIP archive to a specified directory. It passes three arguments to the method: the full path of the ZIP file (“PasswordProtectedZip.zip”), the path of the destination directory (“extractedDocs”), and the password of the ZIP file (“myPassw0rd”).

IronZIP supports AES-128, AES-256, and traditional encryption algorithms. If the password is incorrect or the ZIP file is not encrypted, the method will throw an exception. The extracted files are:

How to Extract Zip Files in VB .NET: Figure 2 - The output of the password-protected extracted files

View Entries of ZIP file

We can view the entries of a compressed file easily by using the IronZIP. The following code opens the ZIP file and displays its entries on the console:

Imports IronZip

Sub Main(args As String())
    ' Specify the ZIP file path
    Dim startPath As String = "D:\Docs.zip"

    ' Open the ZIP archive and list entry names
    Using archive As New IronZipArchive(startPath)
        Dim names As List(Of String) = archive.GetArchiveEntryNames()

        ' Print each entry name to the console
        For Each name As String In names
            Console.WriteLine(name)
        Next name
    End Using
End Sub
Imports IronZip

Sub Main(args As String())
    ' Specify the ZIP file path
    Dim startPath As String = "D:\Docs.zip"

    ' Open the ZIP archive and list entry names
    Using archive As New IronZipArchive(startPath)
        Dim names As List(Of String) = archive.GetArchiveEntryNames()

        ' Print each entry name to the console
        For Each name As String In names
            Console.WriteLine(name)
        Next name
    End Using
End Sub
VB .NET

The above Visual Basic .NET code snippet uses the IronZIP library to extract the names of the entries in a ZIP archive. The code does the following:

  • It creates a new instance of the IronZipArchive class, passing the path of the ZIP file (“D:\Docs.zip”) as a parameter. This opens the ZIP file and loads its contents into memory. The instance is assigned to a variable named archive and is wrapped in a Using statement, which ensures that the ZIP file is closed and disposed of when the code block ends.

  • It calls the GetArchiveEntryNames method of the archive object, which returns a list of strings containing the names of all the entries in the ZIP archive. The list is assigned to a variable named names.

  • It iterates over the names list using a For Each loop and prints each name to the console using the Console.WriteLine method. This displays the names of the files and folders in the ZIP archive.

How to Extract Zip Files in VB .NET: Figure 3 - Output for the previous code example

Conclusion

In conclusion, IronZIP emerges as a powerful tool for handling ZIP archives in VB.NET, offering a rich set of features for compression, extraction, and manipulation. Its versatility extends beyond the basics, allowing developers to seamlessly integrate functionalities like password protection, encryption, and efficient file management. By exploring the examples provided, you can unlock the full potential of IronZIP in your VB.NET projects.

As demonstrated, the library simplifies the extraction process, enabling developers to effortlessly handle password-protected ZIP archives, view file entries, and perform various operations with ease. Moreover, IronZIP's compatibility with a range of compression formats and support across multiple platforms makes it a valuable asset for developers working in diverse environments. IronZIP provides a free trial option that aligns perfectly with their requirements.

Frequently Asked Questions

What is IronZIP?

IronZIP is a collection of .NET software components designed for various development needs, known for its ease of use, performance, and support for a wide range of compression and decompression features.

How do I install IronZIP in a VB.NET project?

You can install IronZIP in your VB.NET project using the NuGet Package Manager Console with the command: Install-Package IronZIP.

How can I extract ZIP files using IronZIP in VB.NET?

You can extract ZIP files using the IronZipArchive.ExtractArchiveToDirectory() method. This method allows you to specify the path of the ZIP file and the destination directory for extraction.

Can IronZIP handle password-protected ZIP files?

Yes, IronZIP can handle password-protected ZIP files. You can use the IronZipArchive.ExtractArchiveToDirectory() method with a password parameter to extract these files.

What are some use cases for IronZIP?

IronZIP can be used for file compression, distribution, encryption, extraction, and management. It supports creating, manipulating, and validating ZIP archives.

How can I view entries of a ZIP file using IronZIP?

You can view entries of a ZIP file using the GetArchiveEntryNames() method. This method returns a list of all entry names, which can be printed or logged.

Does IronZIP support different compression formats?

Yes, IronZIP supports various compression formats, including ZIP, Tar, GZip, and BZip2, providing flexibility for different file management needs.

Is there a free trial available for IronZIP?

Yes, IronZIP offers a free trial option, allowing developers to explore its features and capabilities before committing to a purchase.

What encryption algorithms does IronZIP support?

IronZIP supports AES-128, AES-256, and traditional encryption algorithms, enabling secure handling of files within ZIP archives.

Can IronZIP extract files from various sources?

Yes, IronZIP can extract files from various sources, including local files, streams, or URLs, offering flexibility for different extraction scenarios.

Chaknith Bin
Software Engineer
Chaknith works on IronXL and IronBarcode. He has deep expertise in C# and .NET, helping improve the software and support customers. His insights from user interactions contribute to better products, documentation, and overall experience.
< PREVIOUS
How to Zip Files in Folder Using C#
NEXT >
How to Zip File in C# With Password

Ready to get started? Version: 2025.6 just released

View Licenses >