c#压缩文件

 /// <summary>
    /// 压缩文件 //转载请注明来自 http://www.uzhanbao.com
    /// </summary>
    /// <param name="FileToZip">要进行压缩的文件名</param>
    /// <param name="ZipedFile">压缩后生成的压缩文件名</param>
    private static bool ZipFile(string FileToZip, string ZipedFile, int level)
    {
        if (!File.Exists(FileToZip))
        {
            throw new System.IO.FileNotFoundException("指定要压缩的文件: " + FileToZip + " 不存在!");
        }
        FileStream ZipFile = null;
        ZipOutputStream ZipStream = null;
        ZipEntry ZipEntry = null;
        bool res = true;
        try
        {
            ZipFile = File.OpenRead(FileToZip);
            byte[] buffer = new byte[ZipFile.Length];
            ZipFile.Read(buffer, 0, buffer.Length);
            ZipFile.Close();

            ZipFile = File.Create(ZipedFile);
            ZipStream = new ZipOutputStream(ZipFile);
            ZipEntry = new ZipEntry(Path.GetFileName(FileToZip));
            ZipStream.PutNextEntry(ZipEntry);
            ZipStream.SetLevel(level);

            ZipStream.Write(buffer, 0, buffer.Length);
        }
        catch
        {
            res = false;
        }
        finally
        {
            if (ZipEntry != null)
            {
                ZipEntry = null;
            }
            if (ZipStream != null)
            {
                ZipStream.Finish();
                ZipStream.Close();
            }
            if (ZipFile != null)
            {
                ZipFile.Close();
                ZipFile = null;
            }
            GC.Collect();
            GC.Collect(1);
        }
        return res;
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值