C# で ZIP ファイルを作成

.NET で効率的に圧縮 - ファイルサイズ削減、データのパッケージ化、アーカイブ処理の自動化。

圧縮された ZIP フォルダーを作成する方法

ファイルやフォルダーの内容を ZIP アーカイブに圧縮することは、容量削減、バックアップ、転送の効率化のために一般的です。 Aspose.Zip for .NET を使えば、C# から ZIP アーカイブを作成し (単一ファイル/フォルダー/バッチ)、圧縮レベルの制御や、パスワード保護/AES 暗号化の有効化が可能です。 サーバーサイド処理、社内ツール、CI/CD、デスクトップアプリへの組み込みにも適しています。

C# で画像の ZIP アーカイブを作成

画像 (BMP、JPG、GIF、TIFF など) をアーカイブするには、出力用の FileStream オブジェクト を作成し、 元画像を開いて Archive クラス を使用します。 CreateEntry メソッド で追加し、 Save メソッド で保存します。

画像を含む ZIP を作成する C# コード例。

  // For complete examples and data files, please go to https://github.com/aspose-zip/Aspose.ZIP-for-.NET
  using (FileStream zipFile = File.Open(dataDir + "CompressSingleFile_out.zip", FileMode.Create))
  {
      //File to be added to archive
      using (FileStream source1 = File.Open(dataDir + "picture123.png", FileMode.Open, FileAccess.Read))
      {
          using (var archive = new Archive(new ArchiveEntrySettings()))
          {
              archive.CreateEntry("picture123.png", source1);
              
              archive.Save(zipFile);
          }
      }
  }

C# で PDF を ZIP に変換

PDF も同様に、Archive を作成し CreateEntry で PDF を追加し、Save で ZIP を書き出します。 複数ファイルの追加、圧縮なしでの格納、フォルダー構造の維持など、シナリオに合わせてオプションを調整できます。

PDF ファイルから ZIP を作成する C# 例。

  var dir = "full directory path";
  using (var arch = new Archive())
  {
    arch.CreateEntry("filename.pdf", dir+"file.pdf");
    arch.Save(dir+"pdf-files-archived_result.zip");
  }

パスワード付きで複数ファイルを ZIP

Aspose.Zip は、従来暗号化や AES (AES128/AES192/AES256) など複数の暗号方式で、複数ファイル/フォルダーをアーカイブできます。 フロー自体は同じで、エントリを追加して保存し、必要な暗号設定を構成します。

暗号化付きで複数ファイルをアーカイブする C# 例。

  using (FileStream zipFile = File.Open(dataDir + "CompressWithTraditionalEncryption_out.zip", FileMode.Create))
  {
      using (FileStream file1 = File.Open(dataDir + "alice29.txt", FileMode.Open, FileAccess.Read))
      {
      using (FileStream file2 = File.Open(dataDir + "asyoulike.txt", FileMode.Open, FileAccess.Read))
        {
          using (var archive = new Archive(new ArchiveEntrySettings(null, new TraditionalEncryptionSettings("p@s$"))))
          {
            archive.CreateEntry("alice29.txt", file1);
            archive.CreateEntry("asyoulik3.txt", file2);
            archive.Save(zipFile);
          }
                
        }
      }
  }

ドキュメント - Aspose.ZIP for .NET の圧縮機能

Aspose.Zip for .NET は、明確な API と高い信頼性でアーカイブ圧縮を扱えるよう設計されています。 形式変換やエントリ構造、ストリーム I/O、セキュリティ設定を制御しながら、アーカイブを操作できます。 ZIP 名前空間には ZIP アーカイブおよび関連エンティティの主要クラスが含まれます。

圧縮に対応するその他の形式

PNG、PPT、MPX、MP3、GPX、HTML、DOCX、JPEG、XML など、多くの形式を ZIP アーカイブに圧縮できます。