我正在尝试在 C# 中使用 deflate/gzip 流,但压缩后的文件似乎比以前更大。
例如,我压缩了 900ko 的 docx 文件,但它生成了 1.4Mo 的文件!
它对我尝试过的每个文件都执行此操作。
也许我的做法是错误的?这是我的代码:
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();
如此大的差异对我来说似乎很奇怪,但你应该记住这一点docx
本身是在 ZIP 中压缩的,因此没有理由再次压缩它,结果通常会更大。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)