All articles(网络文学目录) All Pictures(图片目录) All Softwares(软件目录)

 
asp.net用代码压缩服务器上文件夹或文件_[Asp.Net教程]

Writer: 归海一刀 Article type: Programming skills(编程技巧) Time: 2014/1/30 1:22:50 Browse times: 256 Comment times: 0

asp.net用代码压缩服务器上文件夹或文件_[Asp.Net教程]


Head photo

Go homepage
Upload pictures
Write articles

asp.net用代码压缩服务器上文件夹或文件_[Asp.Net教程] 实现过程

1)先引用 ICSharpCode.SharpZipLib.dll;

2).cs文件引入

using System.IO;
using System.Text;

using ICSharpCode.SharpZipLib.Checksums;
using ICSharpCode.SharpZipLib.Zip;
using ICSharpCode.SharpZipLib.GZip;

3)代码

#region 下列代码为压缩并下载代码
ZipOutputStream zos = null;
String strBaseDir = "";

void dlZipDir(string strPath, string strFileName)
{
MemoryStream ms = null;
Response.ContentType = "application/octet-stream";
strFileName = HttpUtility.UrlEncode(strFileName).Replace(’+’, ’ ’);
Response.AddHeader("Content-Disposition", "attachment; filename=" + strFileName + ".zip");
ms = new MemoryStream();
zos = new ZipOutputStream(ms);
strBaseDir = strPath + "\\";
addZipEntry(strBaseDir);
zos.Finish();
zos.Close();
Response.Clear();
Response.BinaryWrite(ms.ToArray());
Response.End();
}

void addZipEntry(string PathStr)
{
DirectoryInfo di = new DirectoryInfo(PathStr);
foreach (DirectoryInfo item in di.GetDirectories())
{
addZipEntry(item.FullName);
}
foreach (FileInfo item in di.GetFiles())
{
FileStream fs = File.OpenRead(item.FullName);
byte[] buffer = new byte[fs.Length];
fs.Read(buffer, 0, buffer.Length);
string strEntryName = item.FullName.Replace(strBaseDir, "");
ZipEntry entry = new ZipEntry(strEntryName);
zos.PutNextEntry(entry);
zos.Write(buffer, 0, buffer.Length);
fs.Close();
}
}

PRotected void Button2_Click(object sender, EventArgs e)
{
string userPath ="D:\\华海实训(hohisoft.com)各级账号和密码";

dlZipDir(userPath, "华海实训(hohisoft.com)服务账号");
}

#endregion




There are 0 records,
Comment:
Must be registered users to comment(必须是注册用户才能发表评论)

Disclaimer Privacy Policy About us Site Map
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.