當前位置:主頁 > 教程 > 編程教程 >

asp.net實現文件夾及文件壓縮,并實現下載
欄目分類:編程教程   發布日期:2015-09-02   作者:admin    來源:未知

步驟1)先引用 ICSharpCode SharpZipLib dll;2) cs文件引入usingSystem IO;usingSystem Text;usingICSharpCode SharpZipLib Checksums;usingICSharpCode SharpZipLib Zip;usingICSharpCode SharpZipLib GZip;

步驟

1)先引用 ICSharpCode.SharpZipLib.dll;
 

2).cs文件引入

  1. using System.IO; 
  2. using System.Text; 
  3. using ICSharpCode.SharpZipLib.Checksums; 
  4. using ICSharpCode.SharpZipLib.Zip; 
  5. using ICSharpCode.SharpZipLib.GZip; 


3)代碼
#region 下列代碼為壓縮并下載代碼     

  1. ZipOutputStream zos = null
  2.       String strBaseDir = ""
  3.  
  4.  
  5.       void dlZipDir(string strPath, string strFileName) 
  6.       { 
  7.           MemoryStream ms = null
  8.           Response.ContentType = "application/octet-stream"
  9.           strFileName = HttpUtility.UrlEncode(strFileName).Replace('+'' '); 
  10.           Response.AddHeader("Content-Disposition""attachment;   filename=" + strFileName + ".zip"); 
  11.           ms = new MemoryStream(); 
  12.           zos = new ZipOutputStream(ms); 
  13.           strBaseDir = strPath + "\\"
  14.           addZipEntry(strBaseDir); 
  15.           zos.Finish(); 
  16.           zos.Close(); 
  17.           Response.Clear(); 
  18.           Response.BinaryWrite(ms.ToArray()); 
  19.           Response.End(); 
  20.       } 
  21.  
  22.       void addZipEntry(string PathStr) 
  23.       { 
  24.           DirectoryInfo di = new DirectoryInfo(PathStr); 
  25.           foreach (DirectoryInfo item in di.GetDirectories()) 
  26.           { 
  27.               addZipEntry(item.FullName); 
  28.           } 
  29.           foreach (FileInfo item in di.GetFiles()) 
  30.           { 
  31.               FileStream fs = File.OpenRead(item.FullName); 
  32.               byte[] buffer = new byte[fs.Length]; 
  33.               fs.Read(buffer, 0, buffer.Length); 
  34.               string strEntryName = item.FullName.Replace(strBaseDir, ""); 
  35.               ZipEntry entry = new ZipEntry(strEntryName); 
  36.               zos.PutNextEntry(entry); 
  37.               zos.Write(buffer, 0, buffer.Length); 
  38.               fs.Close(); 
  39.           } 
  40.       }   
  41.       
  42.  
  43.       PRotected void Button2_Click(object sender, EventArgs e) 
  44.        { 
  45.            string userPath ="D:\\華海實訓(qqview.com)各級賬號和密碼"
  46.         
  47.               dlZipDir(userPath, "華海實訓(qqview.com)服務賬號"); 
  48.  
  49.        } 
  50.  
  51.       #endregion 

 

Copyright © 2016-2020 我愛分享網 版權所有   豫ICP備16008703號-1   關于我們 | 廣告合作 | 版權聲明 | 意見反饋 | 聯系方式 | 原創投稿 | 網站地圖 |
特效 教程 資源 資訊 福利
破解快三单双大小规律