GZipStream und DeflateStream erzeugen größere Dateien

Ich versuche, deflate / gzip-Streams in C # zu verwenden, aber es scheint, dass die Dateien nach der Komprimierung größer sind als zuvor.

Zum Beispiel komprimiere ich eine DocX-Datei von 900Ko, aber es wird eine 1.4Mo-Datei erstellt!

Und es funktioniert für jede Datei, die ich ausprobiert habe.

Kann ich mich irren, wie ich es mache? Hier ist mein Code:

  FileStream input = File.OpenRead(Environment.CurrentDirectory + "/file.docx");
  FileStream output = File.OpenWrite(Environment.CurrentDirectory + "/compressedfile.dat");

  GZipStream comp = new GZipStream(output, CompressionMode.Compress);

  while (input.Position != input.Length)
      comp.WriteByte((byte)input.ReadByte());

  input.Close();

  comp.Close(); // automatically call flush at closing
  output.Close();

Antworten auf die Frage(10)

Ihre Antwort auf die Frage