zoukankan      html  css  js  c++  java
  • C#内存压缩zip文件

    C#中我们使用比较多的文件压缩第三方DLL就是Ionic.Utils.Zip.dll。但是这个DLL只支持对现有文件进行压缩,而不支持内存压缩,如果需要使用内存压缩,那么有第三方DLL ICSharpCode.SharpZipLib.dll。

    下面把例子粘出来:

    using ICSharpCode.SharpZipLib.BZip2;
    using ICSharpCode.SharpZipLib.Zip;
    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Text;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                var data = Encoding.Default.GetBytes("Hello world");
    
                using (System.IO.FileStream ZipFile = System.IO.File.Create("d:\abc.zip"))
                {
                    using (ZipOutputStream ZipStream = new ZipOutputStream(ZipFile))
                    {
                        //文件1
                        ZipEntry entry1 = new ZipEntry("地址.txt");
                        ZipStream.PutNextEntry(entry1);
                        ZipStream.Write(data, 0, data.Length);
    
                        //文件2
                        ZipEntry entry2 = new ZipEntry("名称\地址2.txt");//名称表示文件夹
                        ZipStream.PutNextEntry(entry2);
                        ZipStream.Write(data, 0, data.Length);
                    }
                    ZipFile.Close();
                }
    
                Console.WriteLine("success");
                Console.ReadLine();
            }
        }
    }

    压缩后的目录结构如下:

  • 相关阅读:
    spring注解事务管理
    Spring切入点表达式常用写法
    JPA和事务管理
    maven仓库
    struts2拦截器
    js中 转义字符
    jquery中变量加$和不加$有什么区别!
    spring大乱炖
    第一章 java多线程
    CS:APP 05 笔记
  • 原文地址:https://www.cnblogs.com/duanjt/p/7237739.html
Copyright © 2011-2022 走看看