使用 vb.net 和 System.IO.Compression (.Net 4.5) 压缩文件

Posted

技术标签:

【中文标题】使用 vb.net 和 System.IO.Compression (.Net 4.5) 压缩文件【英文标题】:Zip files using vb.net and System.IO.Compression (.Net 4.5) 【发布时间】:2014-03-26 20:29:24 【问题描述】:

鉴于这两个文件:c:\folder1\test.txt 和 c:\folder2\test.txt

在 VB.NET 上使用 .Net 4.5 System.IO.Compression 创建 zip 文件 (c:\test.zip) 并添加 2 个文件并包含目录结构的最佳方法是什么?

谢谢。

【问题讨论】:

【参考方案1】:

答案位于此处的网站上

.NET GZipStream compress and decompress

      public static bool Test()
        
        string sample = "This is a compression test of microsoft .net gzip compression method and            decompression methods";

        System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();

        byte[] data = encoding.GetBytes(sample);

        // Compress.
        GZipStream hgs;
        byte[] cmpData;

        using(MemoryStream cmpStream = new MemoryStream())
        using(hgs = new GZipStream(cmpStream, CompressionMode.Compress))
        
            hgs.Write(data, 0, data.Length);

            cmpData = cmpStream.ToArray();
        

        using(MemoryStream decomStream = new MemoryStream(cmpData))
        using(hgs = new GZipStream(decomStream, CompressionMode.Decompress))
        
            hgs.Read(data, 0, data.Length);
        

        string sampleOut = encoding.GetString(data);

        bool result = String.Equals(sample, sampleOut);
        return result;
    

【讨论】:

我实际上是在寻找一种方法来创建 *.ZIP 压缩文件,而不是 *.GZ 文件。感谢您的回复 看看这篇文章希望对你有帮助codeproject.com/Articles/381661/…

以上是关于使用 vb.net 和 System.IO.Compression (.Net 4.5) 压缩文件的主要内容,如果未能解决你的问题,请参考以下文章

C# 和 VB.NET 的优缺点?

使用 vb.net 获取和忘记 URL

使用 vb.net 和 System.IO.Compression (.Net 4.5) 压缩文件

VB.NET - 使用 ListBoxFor 和 DropDownList [关闭]

VB.NET 序列化和保存

使用 XInput 和 VB.NET 支持 xbox 360 控制器