フッターコンテンツにスキップ
IRONZIPの使用

C# ZIP ファイル(IronZipを用いた開発者チュートリアル)

ZIPは、FileStreamを使用して複数のファイルやフォルダを効率的に圧縮して統合する一般的な方法です。 これらのファイルは、IronZIP 名前空間を使用することでC#で扱いやすくなり、ZIPを作成したり既存のZIPをパスや個別のファイルから抽出したり、ZIPアーカイブを操作するためのクラスを提供します。 ファイルを圧縮する場合でも、パスワード保護されたZIPを扱う場合でも、ファイルを解凍する場合でも、IronZIP名前空間内のZipFileクラスは貴重な味方となります。

このチュートリアルでは、ZIPアーカイブ作成および抽出の基本プロセスを探るだけでなく、それを達成するコードサンプルも学びます。 ZipArchiveクラスは文字列パスをシームレスに扱い、比類のない精度でZIPファイルをナビゲートし、操作できるようにします。

さらに、ZIP操作を超えて、ドキュメントの完全性を損なうことなくPDFファイルを圧縮するツールであるIronPDFも探求します。 IronZIPとIronPDFの組み合わせにより、C#環境内で圧縮ファイルを効率的に管理し、PDFを合理化するための強力なツールセットが開発者に提供されます。

前提条件

IronZIPおよびIronPDFでのZIPファイル操作を探求する前に、以下の前提条件を確認してください。

  1. Visual Studio: Visual Studioまたはお好みの他のC#統合開発環境(IDE)をインストールしてください。
  2. 基本的なC#の知識: C#プログラミング言語の基本概念に慣れてください。

IronZIPパッケージをインストールする

IronZIPを始めるには、すぐにプロジェクトにIronZIP NuGetパッケージをインストールします。 NuGetパッケージマネージャーコンソールで次のコマンドを実行してください。

Install-Package IronZip

代わりに、公式のIronZIP NuGetウェブサイトからパッケージを直接ダウンロードしてください。

インストールが完了したら、using IronZip;文を上部に追加してC#コードを開始します。

ライセンスキーを適用する

IronZIPには有効なライセンスまたは試用キーが必要です。ライセンスキーをLicenseクラスのLicenseKeyプロパティに割り当てることで適用します。 インポート文の直後に次のコードを含め、IronZIPメソッドを使用する前に含めてください。

using IronZip;

namespace YourNamespace
{
    class Program
    {
        static void Main(string[] args)
        {
            // Apply the IronZIP license key
            IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01";
            // Your ZIP manipulation code using IronZIP
        }
    }
}
using IronZip;

namespace YourNamespace
{
    class Program
    {
        static void Main(string[] args)
        {
            // Apply the IronZIP license key
            IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01";
            // Your ZIP manipulation code using IronZIP
        }
    }
}
Imports IronZip

Namespace YourNamespace
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Apply the IronZIP license key
			IronZip.Licensing.License.LicenseKey = "IRONZIP.MYLICENSE.KEY.1EF01"
			' Your ZIP manipulation code using IronZIP
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

このステップは、プロジェクトでIronZIPのフルポテンシャルを解放するために重要です。

ZIPファイルを作成する

IronZIPを使ってZIPファイルを作成するのは簡単です。 IronArchiveクラスを使用して空のZIPアーカイブを作成し、それにファイルを追加します。 次のコードスニペットは、"Images.zip"という名前のZIPファイルを作成し、4つの画像ファイルを追加することを示しています。

using IronZip;

namespace CSharpZipArchive
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Create an archive called Images.zip
            using (var archive = new IronArchive("Images.zip"))
            {
                // Add files to the ZIP
                archive.Add(@"E:\Datasets\1002-v1.png");
                archive.Add(@"E:\Datasets\1002-v2.png");
                archive.Add(@"E:\Datasets\1002-v3.png");
                archive.Add(@"E:\Datasets\1002-v4.png");
            }  // The archive is automatically closed here
        }
    }
}
using IronZip;

namespace CSharpZipArchive
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Create an archive called Images.zip
            using (var archive = new IronArchive("Images.zip"))
            {
                // Add files to the ZIP
                archive.Add(@"E:\Datasets\1002-v1.png");
                archive.Add(@"E:\Datasets\1002-v2.png");
                archive.Add(@"E:\Datasets\1002-v3.png");
                archive.Add(@"E:\Datasets\1002-v4.png");
            }  // The archive is automatically closed here
        }
    }
}
Imports IronZip

Namespace CSharpZipArchive
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Create an archive called Images.zip
			Using archive = New IronArchive("Images.zip")
				' Add files to the ZIP
				archive.Add("E:\Datasets\1002-v1.png")
				archive.Add("E:\Datasets\1002-v2.png")
				archive.Add("E:\Datasets\1002-v3.png")
				archive.Add("E:\Datasets\1002-v4.png")
			End Using ' The archive is automatically closed here
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

usingステートメントはIronArchiveクラスのスコープインスタンスを作成し、変数archiveに関連付けます。 IronArchiveのコンストラクタは引数としてZIPファイルの名前を1つ取ります(この場合は"Images.zip")。

コードはarchive変数で表されるZIPアーカイブに4つのファイルを追加します。 ファイルは完全なパスで指定されます:

  • E:\Datasets\1002-v1.png
  • E:\Datasets\1002-v2.png
  • E:\Datasets\1002-v3.png
  • E:\Datasets\1002-v4.png

IronArchiveクラスはIDisposableを実装しているため、using文はコードブロックが終了するときにアーカイブが正しく閉じられ、リソースが解放されることを保証します。

このようにして、このプログラムは"Images.zip"という名前のZIPアーカイブを作成し、4つの画像ファイルを追加します。 IronZipはこれを非常に簡単、迅速かつ効率的にしました。

ZIPファイルを抽出する

C#で1行のコードを使ってZIPファイルを抽出することができます。

using IronZip; 

namespace YourNamespace
{
    public class ExtractionExample
    {
        public static void Main(string[] args)
        {
            // Extract contents of the ZIP archive
            IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images");
        }
    }
}
using IronZip; 

namespace YourNamespace
{
    public class ExtractionExample
    {
        public static void Main(string[] args)
        {
            // Extract contents of the ZIP archive
            IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images");
        }
    }
}
Imports IronZip

Namespace YourNamespace
	Public Class ExtractionExample
		Public Shared Sub Main(ByVal args() As String)
			' Extract contents of the ZIP archive
			IronArchive.ExtractArchiveToDirectory("Images.zip", "Extracted Images")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

上記のコードは"Images.zip"という名前のZIPアーカイブファイルの内容を抽出します。 抽出されたファイルは"Extracted Images"という名前のディレクトリに配置されます。 IronArchiveクラスはこの目的のためにExtractArchiveToDirectoryメソッドを提供し、ZIPファイルの内容を非常に効率的に抽出します。

csharp-zip-library-tutorial-1 このワンライナーは効率的に抽出プロセスを処理し、ファイル管理を簡素化します。

C#を使用して既存のZIPファイルにファイルを追加する

C#ソフトウェアアプリケーションでは、既存のZIPファイルにファイルを追加することは動的なコンテンツ管理にとって貴重です。 ユーザーが新しいファイルを追加して圧縮アーカイブを簡単に拡張できるファイルマネージャーアプリケーションを想像してみてください。 IronZIPは既存の任意のZIPファイルを変更するためのシームレスな機能を提供します。

using IronZip;

namespace CSharpZipArchive
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Open an existing ZIP file and create a new one
            using (var archive = IronArchive.FromFile("Images.zip", "NewImages.zip"))
            {
                // Add new files to the ZIP
                archive.Add(@"E:\Datasets\1011-v1.png");
                archive.Add(@"E:\Datasets\1011-v2.png");
            }  // The new archive is automatically closed here
        }
    }
}
using IronZip;

namespace CSharpZipArchive
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Open an existing ZIP file and create a new one
            using (var archive = IronArchive.FromFile("Images.zip", "NewImages.zip"))
            {
                // Add new files to the ZIP
                archive.Add(@"E:\Datasets\1011-v1.png");
                archive.Add(@"E:\Datasets\1011-v2.png");
            }  // The new archive is automatically closed here
        }
    }
}
Imports IronZip

Namespace CSharpZipArchive
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Open an existing ZIP file and create a new one
			Using archive = IronArchive.FromFile("Images.zip", "NewImages.zip")
				' Add new files to the ZIP
				archive.Add("E:\Datasets\1011-v1.png")
				archive.Add("E:\Datasets\1011-v2.png")
			End Using ' The new archive is automatically closed here
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

IronArchive.FromFile("Images.zip", "NewImages.zip") メソッドは既存のZIPファイル"Images.zip"からアーカイブオブジェクトを作成し、新しいアーカイブが"NewImages.zip"という名前になることを指定します。

usingブロック内の2行は新しく作成されたアーカイブにファイルを追加します:

  • archive.Add(@"E:\Datasets\1011-v1.png");
  • archive.Add(@"E:\Datasets\1011-v2.png");

これらの行は指定された画像ファイルを"NewImages.zip"アーカイブに追加します。

ファイルシステム

PDFファイルを圧縮する

ZIP管理に加えて、C#もPDFファイルをシームレスに圧縮する機能を提供します。 このタスクは、IronPDFというサードパーティライブラリの支援を受けることで達成可能です。 PDFの品質を維持しながらPDFを圧縮するための信頼できるソリューションとして際立っています。

IronPDFの紹介

IronPDFは、.NETアプリケーション内でPDFドキュメントを効率的に扱うために設計された多目的なC#ライブラリです。 PDFの生成、操作、テキストや画像の抽出、フォーム処理、デジタル署名、HTMLからPDFへの変換、PDFの圧縮、セキュリティ強化など、多くの機能を提供します。 これらの機能により、PDFの作成、編集、レポート生成、および.NETフレームワーク内でのドキュメント管理のタスクにおいて生産性が向上し、PDF操作のカスタマイズの可能性を確保します。

IronPDFをインストールする

IronPDFをプロジェクトに組み込むには、パッケージマネージャーコンソールで次のコマンドを実行します。

Install-Package IronZip

C#でPDFファイルを圧縮するコードを書く

次のコードサンプルは、アーカイブの品質を維持しながらPDFファイルの圧縮を示しています。

using IronPdf;

namespace YourNamespace
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Load the PDF document
            var pdf = new PdfDocument(@"E:\myPDF.pdf");

            // Compress images in the PDF to 60% of original quality
            pdf.CompressImages(60);

            // Save the compressed PDF
            pdf.SaveAs(@"E:\myCompressedPDF.pdf");
        }
    }
}
using IronPdf;

namespace YourNamespace
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // Load the PDF document
            var pdf = new PdfDocument(@"E:\myPDF.pdf");

            // Compress images in the PDF to 60% of original quality
            pdf.CompressImages(60);

            // Save the compressed PDF
            pdf.SaveAs(@"E:\myCompressedPDF.pdf");
        }
    }
}
Imports IronPdf

Namespace YourNamespace
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Load the PDF document
			Dim pdf = New PdfDocument("E:\myPDF.pdf")

			' Compress images in the PDF to 60% of original quality
			pdf.CompressImages(60)

			' Save the compressed PDF
			pdf.SaveAs("E:\myCompressedPDF.pdf")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

上記のコードでは、IronPDFを使用して"myPDF.pdf"を開きます。 CompressImagesメソッドは画像の品質を60%に削減し、圧縮されたPDFは指定された場所に"myCompressedPDF.pdf"として保存されます。

出力

上記のコードを実行すると、圧縮されたPDFのサイズが元の0.9MBのサイズから254KBに減少したことが出力で示されるように、ファイルサイズの実質的な削減が得られます。これは、IronPDFがPDFファイルを効率的に圧縮しながらその品質を損なわないことを示しています。

ファイルサイズの比較

C#でのIronZIPとIronPDFを使用した効率的なファイル管理

C#の開発において、IronZIPとIronPDFの組み合わせは総合的なファイル管理に対する強力なソリューションを提供します。 IronZIPはZIPファイルを効率的に圧縮および操作する点で優れ、アーカイブの作成と抽出をシームレスに体験できます。 同時に、IronPDFはPDFドキュメントを扱うための強力なツールとして機能し、ドキュメントの完全性を保持しつつファイルを圧縮できます。 この統合により、開発者は圧縮されたアーカイブファイルとPDFファイルの間を容易にナビゲートでき、アプリケーションの全体的な機能とパフォーマンスが向上します。

多様なファイルをZIPアーカイブに圧縮する場合でも、PDFドキュメントのサイズを最適化する場合でも、IronZIPとIronPDFの組み合わせた力により、開発者に柔軟なツールキットが提供され、ファイル関連の様々な課題に対応します。

結論

結論として、C#のIronZIPは圧縮ファイルを扱うための強力な機能を提供し、開発者がZIPファイルを作成し、アーカイブを効率的に抽出および操作できるようにします。 IronPDFもPDFファイルを圧縮するための強力なツールであり、ドキュメントの完全性を維持しながらファイルサイズを削減することが容易です。 開発者はこれらの機能を活用してアプリケーションのパフォーマンスと機能性を向上させ、アーカイブされたファイルや圧縮ファイルのシームレスな操作を実現します。 さらに、IronPDFは<無料の試用版を含む柔軟なライセンスモデルを提供しており、開発者がその機能を探求し、プロジェクトに最適なものを確認することができます。 この試用期間は、ライセンスにコミットする前にIronZIPとIronPDFの機能を評価する貴重な機会を開発者に提供します。

よくある質問

C# で ZIP ファイルを作成するにはどうすればよいですか?

C# で ZIP ファイルを作成するには、IronZIP ライブラリの IronArchive クラスを使用できます。このクラスを使用すると、空の ZIP アーカイブを作成し、ファイルを追加して、ZIP コンテンツを効率的に管理できます。

C# で ZIP アーカイブからファイルを抽出するにはどうすればよいですか?

IronZIP ライブラリの IronArchive クラス内の ExtractArchiveToDirectory メソッドを使用して ZIP アーカイブからファイルを抽出できます。このメソッドを使用すると、ファイルが抽出されるディレクトリを指定できます。

C# でパスワード保護された ZIP ファイルを処理できますか?

はい。IronZIP は、パスワード保護された ZIP ファイルの管理機能を提供し、機密データの安全な圧縮および抽出を可能にします。

C# で ZIP ライブラリ パッケージをインストールする手順は何ですか?

IronZIP ライブラリをインストールするには、NuGet パッケージ マネージャー コンソールで Install-Package IronZip コマンドを使用するか、公式 IronZIP NuGet サイトから直接ダウンロードしてください。

C# で ZIP ライブラリのライセンス キーを適用するにはどうすればよいですか?

IronZIP のライセンス キーを適用するには、アプリケーションの Licensing.License クラスの LicenseKey プロパティにライセンス キーを割り当てます。

C# で PDF ファイルを圧縮するにはどうすればよいですか?

C# で PDF ファイルを圧縮するには、IronPDF を使用できます。PDF ドキュメントを読み込み、CompressImages メソッドを適用して画像品質を低下させ、圧縮された PDF を希望の場所に保存します。

C# の PDF ライブラリに試用版はありますか?

はい。IronPDF は無料試用版を提供しており、開発者はライセンス契約を結ぶ前にその機能を探索できます。

C# で ZIP および PDF ファイルを扱うための前提条件は何ですか?

C# で ZIP および PDF ファイルを扱うには、Visual Studio または同様の C# IDE をインストールしておくとともに、C# プログラミングの基礎知識が必要です。また、IronZIP および IronPDF ライブラリも必要です。

ZIP ファイルを扱うための C# のツールは何ですか?

IronZIP は、ZIP アーカイブを効率的に作成、操作、抽出するように設計された C# ライブラリであり、.NET アプリケーションで ZIP ファイルを扱う開発者にとって理想的です。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。