IRONZIPの使用

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

公開済み 2024年1月4日
共有:

1. 序論

「解凍」とは、ZIPアーカイブからファイルやフォルダを取り出し、解凍するプロセスを指す。 「解凍」とは、圧縮されたファイルやディレクトリを元の状態に戻す作業のこと。ZIPファイル. 画像、TXTファイルなど、様々な種類のファイルをZIPファイルに追加することができます、

ユーザーはZIPアーカイブの内容を解凍することで取り出すことができる。解凍とは圧縮プロセスを逆にすることである。 より効果的な送信、保存、共有のためにまとめられた個々のファイルやフォルダにアクセスするのは、よく使われる使い方だ。 unzip "手順が終わると、ファイルは元の構造を持ち、ユーザーが必要に応じて読んだり、変更したり、使用したりすることができる。 この記事では、IronZIPアーカイブライブラリを使用してAsp.netコアでファイルを解凍します。

2.Asp.NETコアの解凍ファイル概要

  1. 新しいAsp.NETコアプロジェクトを作成する。

  2. 作成したプロジェクトにIronZIPライブラリをインストールする

  3. ファイルを解凍するには、IronArchive クラスをインスタンス化します。

  4. ZIP ファイルは ExtractArchiveToDirectory 関数を使用して解凍することができます。

  5. 解凍先ファイルを指定します。

3.IronZIP ライブラリ

Iron Softwareは、.NETライブラリを作成しました。IronZIP.NETアプリケーションでのZIPファイルの取り扱いと管理を容易にします。 ZIPはプログラマーにツールと機能を提供し、様々な方法でZIPと対話することができる。 これらには、ZIPファイル内のファイルやディレクトリの生成、抽出、圧縮、解凍、暗号化、変更が含まれます。

3.1 IronZIPの特徴

  • ZIPファイル作成: .NETアプリが最初から新しいZIPアーカイブを作成する機能。
  • 抽出と解凍: 既存のZIPパッケージからファイルやディレクトリを削除し、コンテンツを解凍する能力。
  • 圧縮: ファイルやフォルダを ZIP アーカイブに縮小して、輸送や保管のために小さくするツールを提供します。
  • パスワード保護と暗号化: ZIPアーカイブの内容を保護するために、この機能は、パスワード保護を適用し、ZIPファイルを暗号化する機能を提供します。
  • ファイル操作(ファイル操作): これは、プログラマがZIPパッケージ内のファイルやディレクトリを追加、 削除、更新、あるいは他の方法で操作することを可能にする。
  • 互換性: .NETの様々な設定で機能するように作られ、フレームワークの複数の反復と互換性があります。
  • パフォーマンスの最適化: .NET プログラムが大きな ZIP ファイルやデータセットをより効率的に管理できるよう、速度の最大化を目標としています。

    開発者がアプリケーションのZIPファイルを管理するとき、IronZIPは便利なツールである。 .NETフレームワークの中で、プログラムでZIPアーカイブを扱うための様々な機能を提供し、シンプルさと多用途性を提供します。

    特徴、機能、互換性、新しいバージョンに含まれる新機能に関する最新の詳細については、公式ドキュメント、リリースノート、またはIronZIPのウェブサイトをご覧ください。もっと詳しく知りたい方はこれ.

3.2 Visual Studioで新規プロジェクトを作成する

Visual Studioプログラムを起動したら、Fileオプションを選択します。 "new project "を選択し、"Asp.NET core Web App "を選択する。

関連するテキストボックスにプロジェクト名を入力し、ファイルの場所を選択してください。 次に、Createボタンをクリックし、必要な.NETフレームワークのバージョンを選択します。

選択したアプリケーションの構造は、Visual Studioプロジェクトによって生成されます。 この例では、ASP.NET MVCが使用されている。 つまり、コードを追加してアプリケーションをビルド/実行できる現在のコントローラを利用するか、新しいコントローラを作成するかです。

ライブラリを追加し、コードをテストできます。

4.IronZIP パッケージダウンロード

Visual Studioを使用する方法

Visual Studio の NuGet Package Manager 機能を使用して、パッケージをソリューションに直接インストールできます。 以下のスナップショットを使用して、NuGet Package Managerにアクセスできます。

.NET Coreでファイルを解凍する方法:図1 - NuGetパッケージ・マネージャーへのアクセス方法

これはNuGetウェブサイトのパッケージ・リストを引き出す検索ボックスを提供する。下のスクリーンショットは "IronZIP "というフレーズをパッケージマネージャのどこで探すかを示している。

.NET Coreでファイルを解凍する方法:図2 - NuGetパッケージマネージャでIronZIPを検索する

上の画像では、適切な検索語のリストが表示されている。 ソリューション・パッケージをインストールするには、必要なオプションを選択する必要があります。

4.2 Visual Studio コマンドラインの使用

Visual Studioで、[Tools] > [NuGet Package Manager]を選択して、パッケージ・マネージャ・コンソールを表示します。

パッケージマネージャーのターミナルタブに以下の行を入れる:

Install-Package IronZip

ダウンロードしてアクティブなプロジェクトにインストールすると、パッケージは使用できるようになる。

4.3 NuGetウェブサイトからの直接ダウンロード

第3の方法を使えばNuGetパッケージウェブサイトから直接

そこに移動してリンクを開く。

右のメニューからダウンロードパッケージを選択してください。

ダウンロードが完了したら、パッケージをダブルクリックします。 それだけで、勝手にインストールされる。

もう一度、ソリューションをロードし、プロジェクトで使い始める。

4.4 IronZIPウェブサイトから直接ダウンロード

このリンクをクリックすると、最新のパッケージをウェブサイト。ダウンロードしたら、付属の手順に従って、パッケージをプロジェクトに追加してください。

  • ソリューション・ウィンドウから右クリックでプロジェクトを選択する。
  • リファレンスを選択し、ダウンロードが完了したらその場所をブラウズする。
  • その後、OKをクリックして参照を追加する。

4.5 Asp.NETコアでファイルを解凍する

C#を使ってZIPアーカイブから特定のファイルを取り出すには、ファイル名と取り出し先を指定する必要がある。

コードサンプルはこちら:

using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using IronZip;
namespace IronPDF_WebApp.Pages
{
    public class IndexModel : PageModel
    {
        private readonly ILogger<IndexModel> _logger;
        public IndexModel(ILogger<IndexModel> logger)
        {
            _logger = logger;
        }
        public IActionResult OnPost()
        {
try{
            var file = Request.Form.Files [0];
            using (var stream = new FileStream(filepath + file.FileName, FileMode.Create))
            {
                 file.CopyToAsync(stream);
            }
            IronZipArchive.ExtractArchiveToDirectory(filepath + file.FileName, extractfile);
}
catch(Exception ex){
return RedirectToAction("Error");
}
            return RedirectToAction("Get");
        }
}
}
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using IronZip;
namespace IronPDF_WebApp.Pages
{
    public class IndexModel : PageModel
    {
        private readonly ILogger<IndexModel> _logger;
        public IndexModel(ILogger<IndexModel> logger)
        {
            _logger = logger;
        }
        public IActionResult OnPost()
        {
try{
            var file = Request.Form.Files [0];
            using (var stream = new FileStream(filepath + file.FileName, FileMode.Create))
            {
                 file.CopyToAsync(stream);
            }
            IronZipArchive.ExtractArchiveToDirectory(filepath + file.FileName, extractfile);
}
catch(Exception ex){
return RedirectToAction("Error");
}
            return RedirectToAction("Get");
        }
}
}
Imports Microsoft.AspNetCore.Mvc
Imports Microsoft.AspNetCore.Mvc.RazorPages
Imports IronZip
Namespace IronPDF_WebApp.Pages
	Public Class IndexModel
		Inherits PageModel

		Private ReadOnly _logger As ILogger(Of IndexModel)
		Public Sub New(ByVal logger As ILogger(Of IndexModel))
			_logger = logger
		End Sub
		Public Function OnPost() As IActionResult
Try
			Dim file = Request.Form.Files (0)
			Using stream = New FileStream(filepath + file.FileName, FileMode.Create)
				 file.CopyToAsync(stream)
			End Using
			IronZipArchive.ExtractArchiveToDirectory(filepath + file.FileName, extractfile)
Catch ex As Exception
Return RedirectToAction("Error")
End Try
			Return RedirectToAction("Get")
		End Function
	End Class
End Namespace
VB   C#

上記のコードで、IronZIP 名前空間がインポートされていることを確認してください。 IronZIP の ZipFile クラスには ExtractArchiveToDirectory 関数が含まれている。 これにより、ソース・ファイル・システムと解凍ファイルのパスという2つのパラメーターを渡すことができる。 ZIPArchivezip ファイルは任意の数のコンテンツを持つことができ、それを使ってコンテンツを解凍し、ファイル指定のディレクトリに保存することができる。 ExtractArchiveToDirectoryメソッドが必要とする唯一のパラメータは、単一のZIPファイルの内容の抽出ポイントとして使用されるディレクトリパスです。

すべてのファイルを指定されたディレクトリに展開するために、この手法は内部的にZIPパッケージ内のすべてのファイルとディレクトリをループする。 ZIPファイルがなかったり、抽出手順に問題があるなど、例外が発生した場合は、慎重に対処してください。 例外はtry-catchブロックを使ってキャッチし、処理することができる。 大量抽出の場合、ExtractArchiveToDirectory メソッドが ZIP アーカイブ内のすべてのファイルとディレクトリの抽出を管理し、抽出を簡単にします。IronZIP 拡張メソッドを使って ZIP ファイルを作成することができる。

IronZIPライブラリの詳細については、以下をクリックしてください。これ.

5. 結論

開発者は、C#アプリケーションでZIPファイルを管理するために特別に設計されたIronZIP for .NETライブラリの助けを借りて、ZIPファイルの圧縮、抽出、および操作を処理することができます。 複雑な手順を合理化し、特定のファイルの抽出、ファイルの一括抽出、エントリーの追加、既存のアーカイブの変更などのファイル操作をよりシンプルにすることで、IronZIPは直感的なAPIを採用しています。

このライブラリを使えば、開発者はC#(シーシャープ)プロジェクトでゼロから始めることなく、ファイル管理機能を向上させることができる。 難なく統合できる。 その汎用性のおかげで、ZIPの内容は動的に変更され、様々なアプリケーションの要件に合わせてファイルを追加、変更、削除することができます。

IronZIPの強力な例外処理機能は、ZIPファイルの紛失や破損のような状況に対処する際、一貫したワークフローを保証し、ミスの修復を容易にします。 過去には、IronZIPは.NET設定でZIPファイルを管理するための信頼できるソリューションを提供していた。 IronZIP の価格は $749 からで、無料の開発者版が付属しています。 ライセンスの詳細についてはこれ. Iron Software 製品については、以下をご確認ください。これ.

< 以前
ZipArchive C# (開発者チュートリアル)
次へ >
C#でZipファイルを開く方法

準備はできましたか? バージョン: 2024.12 新発売

無料のNuGetダウンロード 総ダウンロード数: 5,596 ライセンスを表示 >