.net DotNetZip不压缩我的字符串

.net DotNetZip不压缩我的字符串,.net,compression,dotnetzip,.net,Compression,Dotnetzip,我使用的是DotNetZip版本1.8.4.5。我现在无法升级 我正在从服务器向客户端应用程序发送一个大列表。我正在将列表序列化为字符串变量(contentsAsString)。然后,我将contentsAsString压缩到MemoryStream中,并将字节数组传递回我的客户机。我的压缩字节数组长度是2087188(1.99 MB) 如果我获取contentsAsString的值并将其保存到一个文本文件中,则该文件的大小为1.99MB(同上)。如果使用Windows压缩并压缩文本文件,则生成

我使用的是DotNetZip版本1.8.4.5。我现在无法升级

我正在从服务器向客户端应用程序发送一个大列表。我正在将列表序列化为字符串变量(contentsAsString)。然后,我将contentsAsString压缩到MemoryStream中,并将字节数组传递回我的客户机。我的压缩字节数组长度是2087188(1.99 MB)

如果我获取contentsAsString的值并将其保存到一个文本文件中,则该文件的大小为1.99MB(同上)。如果使用Windows压缩并压缩文本文件,则生成的zip文件为132 KB

为什么我的MemoryStream没有压缩到132 KB?以下是我正在使用的代码:

   private byte[] zipContents<T>(List<T> contents)
    {

        using (Ionic.Zip.ZipFile zip = new Ionic.Zip.ZipFile())
        {
            using (MemoryStream ms = new MemoryStream())
            {
                string contentsAsString = Utility.SerializeListToString<T>(contents);
                zip.AddEntry("stream.zip", null, contentsAsString);
                zip.Save(ms);
                return ms.ToArray();
            }

        }

    }
private byte[]zipContents(列表内容)
{
使用(Ionic.Zip.ZipFile Zip=new-Ionic.Zip.ZipFile())
{
使用(MemoryStream ms=new MemoryStream())
{
字符串contentsAsString=Utility.SerializeListToString(内容);
AddEntry(“stream.zip”,null,contentsAsString);
zip.Save(ms);
返回ToArray女士();
}
}
}

我不知道有这么酷的库,但看看他们的参考资料,我发现了一些关于压缩方法的东西

这有帮助吗

我还发现:

我不知道有这么酷的库,但看看他们的参考资料,我发现了一些关于压缩方法的东西

这有帮助吗

我还发现:

请注意,如果GZIP或Deflate压缩也适合您,.NET Framework(2.0+)为流提供GZIP和Deflate压缩(可在命名空间中找到)

请注意,如果GZIP或Deflate压缩也适合您,.NET Framework(2.0+)为流提供GZIP和Deflate压缩(在名称空间中找到)

正如我在评论中提到的,使用最新的1.9版本的DotNetZip进行压缩,正如我所期望的那样。找不到1.8.4.5进行测试,因此我认为最好升级


谢谢。

正如我在评论中提到的,使用最新的1.9版本的DotNetZip进行压缩,正如我所期望的那样。无法找到1.8.4.5进行测试,因此我认为最好升级


谢谢。

我找不到要下载的1.8.4.5,但我使用了最新的1.9,使用您的代码可以将1.87mb的文本数据压缩到311kb。@BeemerGuy--似乎唯一的解决办法是升级。我升级了,也可以让它压缩字符串。谢谢。如果您想将其作为答案提交,我将接受。我找不到1.8.4。5下载,但我使用了最新的1.9,并且使用您的代码能够将1.87mb的文本数据压缩为311kb。@BeemerGuy--似乎唯一的解决方案是升级。我升级了,也可以让它压缩字符串。谢谢。如果您想将其作为答案提交,我将接受它。在Silverlight中Gzip不可用:(Gzip在Silverlight中不可用:(