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

C#でのファイルの圧縮と解凍


C#のSystem.IO.Compression名前空間を使用して、C#のファイルを圧縮および解凍します。

圧縮

ファイルを圧縮するには、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. OSXでファイルを移動および管理するための5つの便利なFinderの代替手段

    Macでの日常のファイル管理には、Finderが最適です。ただし、ヒービングリフティングを行いたい場合は、より多くの馬力が必要になります。最大の銃が必要な場合、いくつかの会社がFinderの完全な代替ユーティリティを作成しますが、ファイル管理全体の見直しが必要ない場合でも、日常のデータのシャッフルを少し簡単にするのに役立つFinderの代替手段を見つけることができます。 。 1。パスファインダー Path Finderは、Finderの代替アプリケーションの長老であり、私の個人的なお気に入りです。これは「ファインダーの代替品」と呼ばれることもありますが、思ったほど劇的ではありません。 Pat

  2. Androidでファイルとフォルダを非表示にする方法

    Androidスマートフォンでファイルやフォルダを非表示にしたい場合は、試すことができることがたくさんあります。たとえば、携帯電話をロックすると、他の人が覗くのを防ぎ、フォルダをパスワードで保護することで、不正な侵入を防ぎます。ただし、さらに一歩進んでフォルダまたはファイルを非表示にできるとしたらどうでしょうか。 Android OSのトリックと、役立つアプリを使用して、これを行う方法を見てみましょう。 Androidでファイルまたはフォルダを非表示にする方法 まず、このトリックを行うには、ファイルエクスプローラーアプリが必要です。お気に入りのアプリで問題を解決できますが、開始する前に、ア