[转]C#如何把文件夹压缩打包然后下载

public partial class _Default2 : System.Web.UI.Page{
        protected void Page_Load(object sender, EventArgs e)
        {  

        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            string Path = "c:\\de";
            string resultPath = string.Empty;
            bool rel =false;
            TimeSpan nowTimeSpan=new TimeSpan();
            resultPath=YaSuo(out rel, out nowTimeSpan);
            ResponseFile(resultPath);
        }  

        /// <summary>
        /// 压缩文件
        /// </summary>
        /// <returns>返回压缩后的路径</returns>
        public string YaSuo(out bool bo, out TimeSpan times)
        {
            string rarurlPath = string.Empty;
            bo = false;
            //压缩文件
            string yasuoPathSave = "c:\\de\\TZ.rar";
            string yasuoPath = "c:\\de\\temp";
            System.Diagnostics.Process pro = new System.Diagnostics.Process();
            pro.StartInfo.FileName = @"C:\Program Files\WinRAR\WinRAR.exe";//WinRAR所在路径
            //pro.StartInfo.Arguments = "a " + yasuoPathSave + " " + yasuoPath + " -r ";//dir是你的目录名
            pro.StartInfo.Arguments = string.Format("a {0} {1} -r",yasuoPathSave,yasuoPath);  

            pro.Start();
            times = pro.TotalProcessorTime;
            bo = pro.WaitForExit(60000);//设定一分钟
            if (!bo)
                pro.Kill();
            pro.Close();
            pro.Dispose();
            rarurlPath = yasuoPathSave;
            return rarurlPath;
        }  

        protected void ResponseFile(string filename)
        {  

            FileInfo file = new FileInfo(filename);//创建一个文件对象
            Response.Clear();//清除所有缓存区的内容
            Response.Charset = "GB2312";//定义输出字符集
            Response.ContentEncoding = Encoding.Default;//输出内容的编码为默认编码
            Response.AddHeader("Content-Disposition","attachment;filename="+file.Name);
            //添加头信息。为“文件下载/另存为”指定默认文件名称
            Response.AddHeader("Content-Length",file.Length.ToString());
            //添加头文件,指定文件的大小,让浏览器显示文件下载的速度
            Response.WriteFile(file.FullName);// 把文件流发送到客户端
            Response.End();
        }  

    }  
时间: 2024-10-13 01:04:21

[转]C#如何把文件夹压缩打包然后下载的相关文章

[转]linux下文件夹压缩

[转]linux下文件夹压缩 .tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) --------------------------------------------- .gz 解压1:gunzip FileName.gz 解压2:gzip -d FileName.gz 压缩:gzip FileName .tar.gz 解压:tar zxvf FileName.tar.gz 压缩:tar

C# 文件/文件夹压缩解压缩

项目上用到的,随手做个记录,哈哈. 直接上代码: 1 using System; 2 using System.Data; 3 using System.Configuration; 4 using System.Collections.Generic; 5 using System.IO; 6 using ICSharpCode.SharpZipLib.Zip; 7 using ICSharpCode.SharpZipLib.Checksums; 8 namespace BLL 9 { 10

SharpZipLib 文件/文件夹压缩

一.ZipFile ZipFile类用于选择文件或文件夹进行压缩生成压缩包. 常用属性: 属性 说明 Count 文件数目(注意是在ComitUpdat之后才有) Password 压缩包密码 Size 压缩包占用空间大小 Name 压缩包名称,默认输出是文件路径 ZipEntry 压缩包里的文件,通过索引[]访问 其常用方法如下: 方法 说明 Add 添加要进行压缩的文件 AddDirectory 添加文件夹(不会压缩文件夹里的文件) Delete 删除文件或文件夹 BeginUpdate 开

【C#公共帮助类】WinRarHelper帮助类,实现文件或文件夹压缩和解压,实战干货

关于本文档的说明 本文档使用WinRAR方式来进行简单的压缩和解压动作,纯干货,实际项目这种压缩方式用的少一点,一般我会使用第三方的压缩dll来实现,就如同我上一个压缩类博客,压缩的是zip文件http://www.cnblogs.com/wohexiaocai/p/5469253.html,实际项目中也会用到rar压缩,所以总结了一下代码,之后简单的几个函数. 欢迎传播分享,必须保持原作者的信息,但禁止将该文档直接用于商业盈利. 本人自从几年前走上编程之路,一直致力于收集和总结出好用的框架和通

Linux下 文件夹 压缩 解压缩 打包

http://blog.sina.com.cn/s/blog_7479f7990100zwkp.html tar -zcvf /home/xahot.tar.gz /xahot tar -zcvf 打包后生成的文件名全路径 要打包的目录 例子:把/xahot文件夹打包后生成一个/home/xahot.tar.gz的文件. tar -zcvf  /home/xahot.tar.gz /xahot 如果提示不要"/" 则写作 tar -zcvf  /home/xahot.tar.gz  x

C# 下利用ICSharpCode.SharpZipLib.dll实现文件/文件夹压缩、解压缩

ICSharpCode.SharpZipLib.dll下载地址 1.压缩某个指定目录下日志,将日志压缩到CompressionDirectory文件夹中,并清除原来未压缩日志. #region 压缩logs目录下日志 public static void CompresslogDic() { try { string logFilePath = AppDomain.CurrentDomain.BaseDirectory + "logs"; DirectoryInfo logsDic =

NodeJS 文件(夹)压缩/解压(zip/unzip)

我使用的比较靠谱的,也比较简单,其中archiver很强大,支持zip格式tar格式,只需要提供路径就可以压缩已存在的文件夹. 压缩: 1 var fs = require('fs'); 2 var archiver = require('archiver'); 3 4 var output = fs.createWriteStream('archiver-unzip.zip'); 5 var archive = archiver('zip'); 6 7 archive.on('error',

C#文件或文件夹压缩和解压方法(通过ICSharpCode.SharpZipLib.dll)

我在网上收集一下文件的压缩和解压的方法,是通过ICSharpCode.SharpZipLib.dll 来实现的 一.介绍的目录 第一步:下载压缩和解压的 ICSharpCode.SharpZipLib.dll 支持库 第二步:创建一个压缩和解压的demo项目 第三步:查看压缩和解压的文件的结果 二.demo演示(包括源码和界面) 1.下载文件压缩和解压的支持库dll ,下载地址:http://pan.baidu.com/s/1pLausnL 2.创建window创建项目 1) 添加引用(文件压缩

通过SharpZipLib实现文件夹压缩以及解压

代码说明 基于SharpZipLib实现Zip压缩解压,扩展实现文件夹级别压缩解压: 项目源码:MasterChief.DotNet.Infrastructure.Zip Install-Package MasterChief.DotNet.Infrastructure.Zip 欢迎Star,欢迎PR: 如何使用 //压缩 ZipHelper.Compress(@"C:\迅雷下载", @"C:\迅雷下载.zip"); //解压 ZipHelper.Extract(@