惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

人人都是产品经理
人人都是产品经理
Blog — PlanetScale
Blog — PlanetScale
MyScale Blog
MyScale Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
WordPress大学
WordPress大学
Vercel News
Vercel News
D
Docker
博客园 - 聂微东
T
Tailwind CSS Blog
aimingoo的专栏
aimingoo的专栏
云风的 BLOG
云风的 BLOG
D
DataBreaches.Net
B
Blog RSS Feed
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
Microsoft Security Blog
Microsoft Security Blog
美团技术团队
F
Fortinet All Blogs
MongoDB | Blog
MongoDB | Blog
T
The Blog of Author Tim Ferriss
GbyAI
GbyAI
N
Netflix TechBlog - Medium
G
Google Developers Blog
腾讯CDC

博客园 - 乐逍遥

对微软开发工具的看法 56度烟台社区 301跳转与URL转发 windows phone7 开发(Windows Phone 7 Emulator常用快捷键) Silverlight版本的微博工具 微博工具 - 乐逍遥 - 博客园 table 划线 给treeview递归增加菜单 vs2005启动时候的新闻网址 c# 操作word 用c#操作Excell 数据库设计(六)概念数据模型 数据库设计(五)概念数据模型 数据库设计(四)概念数据模型 数据库设计(三)概念数据模型 数据库设计(二)概念数据模型 数据库设计系列(一)概念数据模型 电子邮件Mailto的一些参数用法 OutLook编程
压缩文件
乐逍遥 · 2007-11-01 · via 博客园 - 乐逍遥

1.引用ICSharpCode.SharpZipLib.dll组件
2.

/// <summary>
  /// 将指定的文件打入包中
  /// </summary>
  /// <param name="l_sZipFile">压缩生成文件</param>
  /// <param name="l_sWaitZipFile">待压缩文件</param>
  /// <param name="blnDelWaitFile">是否删除待压缩文件</param>
  /// <param name="sPassWord">压缩文件口令,为“”不用口令</param>
  public static void ZipFile(string l_sZipFile,string[] l_sWaitZipFile,bool blnDelWaitFile,string sPassWord)
  {
   
   System.IO.FileStream myFileStream = new System.IO.FileStream(l_sZipFile, System.IO.FileMode.Create);    
   ICSharpCode.SharpZipLib.Zip.ZipOutputStream zos=new ZipOutputStream(myFileStream);

   if(sPassWord.Length>0)
   {
    zos.Password=sPassWord;
   }
   
   FileStream myFileStream1;
   for(int i=0;i<l_sWaitZipFile.Length;i++)
   {
    if (!System.IO.File.Exists(l_sWaitZipFile[i])) continue;

    myFileStream1=new FileStream( l_sWaitZipFile[i],System.IO.FileMode.Open);

    byte[] buffer = new byte[myFileStream1.Length];
    myFileStream1.Read(buffer, 0, buffer.Length);
    ZipEntry entry = new ZipEntry(Path.GetFileName(l_sWaitZipFile[i]));
    zos.PutNextEntry(entry);

    zos.Write(buffer, 0, buffer.Length);
    myFileStream1.Close();

    if(blnDelWaitFile)
    {
     File.Delete( l_sWaitZipFile[i]);
    }
   
   }
   zos.Close();    
    
   myFileStream.Close();
  
  }