C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#でGZIP形式を使用してファイルを圧縮および解凍する


GZIP形式を使用してファイルを圧縮および解凍するには、GZipStreamクラスを使用します。

圧縮

ファイルを圧縮するには、GZipStreamクラスをFileStreamクラスとともに使用します。次のパラメータを設定します。

圧縮するファイルと出力zipファイルの名前。

ここで、outputFileは出力ファイルであり、ファイルはFileStreamに読み込まれます。

using(var compress = new GZipStream(outputFile, CompressionMode.Compress, false)) {
   byte[] b = new byte[inFile.Length];
   int read = inFile.Read(b, 0, b.Length);
   while (read > 0) {
      compress.Write(b, 0, read);
      read = inFile.Read(b, 0, b.Length);
   }
}

解凍

ファイルを解凍するには、同じGZipStreamクラスを使用します。次のパラメータを設定します:ソースファイルと出力ファイルの名前。

ソースzipファイルからGZipStreamを開きます。

using (var zip = new GZipStream(inStream, CompressionMode.Decompress, true))

解凍するには、ループを使用して、ストリームにデータがある限り読み取ります。それを出力ストリームに書き込むと、ファイルが生成されます。このファイルは解凍されたファイルです。

using(var zip = new GZipStream(inputStream, CompressionMode.Decompress, true)) {
   byte[] b = new byte[inputStream.Length];
   while (true) {
      int count = zip.Read(b, 0, b.Length);
      if (count != 0)
      outputStream.Write(b, 0, count);
      if (count != b.Length)
      break;
   }
}

  1. ZArchiverを使用してAndroidでファイルを圧縮および抽出する方法

    Androidデバイスでは、メールで送信したりダウンロードしたりする可能性のあるすべてのファイルタイプを常に開くことができるとは限りません。同じことがファイルまたはファイルのグループの圧縮にも当てはまります。ファイルの内容によっては、これは大きな不便かもしれません。一部のファイルマネージャーでは、zipファイルを圧縮または解凍できますが、開く必要のあるrarまたは7zファイルがある場合はどうなりますか? ZArchiverを使用すると、ファイルマネージャーが実行できない場合でも、Androidでファイルを圧縮および抽出できます。 Androidでのファイルの圧縮 圧縮フォルダを作成するプロセ

  2. VLC を使用してオーディオまたはビデオ ファイルを任意の形式に変換する方法

    VLC は、あらゆるファイル形式を実行できる最高のメディア プレーヤーの 1 つと見なされています。ユーザーインターフェースはそれほど魅力的ではありませんが、そのプレイ機能により、ユーザーの間で最初に選ばれています。ただし、VLC が単なるメディア プレーヤーではなく、コンバーターでもあることを知っている人はほとんどいません。必要に応じて、任意のオーディオおよびビデオ ファイルを任意の形式に変換するのに役立ちます。 音楽や映画に情熱を傾けているなら、オーディオやビデオを別の形式に変換するのが面倒なことを知っているでしょう。探している形式が現在のコンバーターでサポートされていない場合は、特定