解压文件 ,引用 SharpZipLib.dll类库

方法一:

  public void UnGzipFile(string zipfilename)
{ //同压缩文件同级同名的非压缩文件路径
var path = zipfilename.Replace(Path.GetFileName(zipfilename), Path.GetFileNameWithoutExtension(zipfilename));
//创建压缩文件的输入流实例
using (GZipInputStream zipFile = new GZipInputStream(File.OpenRead(zipfilename)))
{
//创建目标文件的流
using (FileStream destFile = new FileStream(path, FileMode.Create))
{
int buffersize = ;//缓冲区的尺寸,一般是2048的倍数
byte[] FileData = new byte[buffersize];//创建缓冲数据
while (buffersize > )//一直读取到文件末尾
{
buffersize = zipFile.Read(FileData, , buffersize);//读取压缩文件数据
destFile.Write(FileData, , buffersize);//写入目标文件
}
destFile.Flush();
}
}
}

方法二:

        /// <summary>
/// 引用 SharpZipLib.dll
/// </summary>
/// <param name="zipFilePath">压缩文件</param>
/// <param name="filePath">解压文件</param>
public void gunZipFile(string zipFilePath, string filePath)
{
using (Stream inStream = new GZipInputStream(File.OpenRead(zipFilePath)))
{
using (FileStream outStream = new FileStream(filePath, FileMode.Create))
{
byte[] buf = new byte[];
StreamUtils.Copy(inStream, outStream, buf);
}
}
}

压缩

        /// <summary>
/// 压缩文件
/// </summary>
/// <param name="filePath">文件路径</param>
/// <param name="zipFilePath">压缩后的文件路径</param>
public static void gZipFile(string filePath, string zipFilePath)
{
Stream s = new GZipOutputStream(File.Create(zipFilePath));
FileStream fs = File.OpenRead(filePath);
int size;
byte[] buf = new byte[];
do
{
size = fs.Read(buf, , buf.Length);
s.Write(buf, , size);
} while (size > );
s.Close();
fs.Close();
}

文章来源:http://walkerqt.blog.51cto.com/1310630/1706239

C# 解压与压缩文件的更多相关文章

  1. [转]Ubuntu Linux 安装 .7z 解压和压缩文件

    [转]Ubuntu Linux 安装 .7z 解压和压缩文件 http://blog.csdn.net/zqlovlg/article/details/8033456 安装方法: sudo apt-g ...

  2. 【VC++技术杂谈008】使用zlib解压zip压缩文件

    最近因为项目的需要,要对zip压缩文件进行批量解压.在网上查阅了相关的资料后,最终使用zlib开源库实现了该功能.本文将对zlib开源库进行简单介绍,并给出一个使用zlib开源库对zip压缩文件进行解 ...

  3. C#利用SharpZipLib解压或压缩文件夹实例操作

    最近要做一个项目涉及到C#中压缩与解压缩的问题的解决方法,大家分享. 这里主要解决文件夹包含文件夹的解压缩问题. )下载SharpZipLib.dll,在http://www.icsharpcode. ...

  4. C# 解压RAR压缩文件

    此方法适用于C盘windows文件夹中有WinRAR.exe文件 /// 解压文件(不带密码) RAR压缩程序 返回解压出来的文件数量 /// </summary> /// <par ...

  5. C#解压或压缩文件夹

    这里主要解决文件夹包含文件夹的解压缩问题.1)下载SharpZipLib.dll,在http://www.icsharpcode.net/OpenSource /SharpZipLib/Downloa ...

  6. C# 解压zip压缩文件

    此方法需要在程序内引用ICSharpCode.SharpZipLib.dll 类库 /// <summary> /// 功能:解压zip格式的文件. /// </summary> ...

  7. [转]Ubuntu Linux 安装 .7z 解压和压缩文件

    原文网址:http://blog.csdn.net/zqlovlg/article/details/8033456 安装方法: sudo apt-get install p7zip-full 解压文件 ...

  8. golang zip 解压、压缩文件

    package utils import (    "archive/zip"    "fmt"    "io"    "io/i ...

  9. Ubuntu Linux 安装 .7z 解压和压缩文件

    安装方法: sudo apt-get install p7zip 解压文件: 7z x manager.7z -r -o /home/xx解释如下:x 代表解压缩文件,并且是按原始目录解压(还有个参数 ...

随机推荐

  1. Python——Flask框架——程序的结构

    一.项目结构 |-flasky |-app Flask程序一般都保存在这里 |-templates/ |-static/ |main/ |-__init__.py |-errors.py |-form ...

  2. springdata 动态查询 是用来查询的 仅提供查询功能

    springdata 动态查询 是用来查询的 仅提供查询功能

  3. redis哨兵(Sentinel)、虚拟槽分区(cluster)和docker入门

    一.Redis-Sentinel(哨兵) 1.介绍 Redis-Sentinel是redis官方推荐的高可用性解决方案,当用redis作master-slave的高可用时,如果master本身宕机,r ...

  4. 安全工具acunetix使用

    今天来主要介绍了安全测试工具AWVS(acunetix web vulnerability scanner)的使用 1)  安装包的下载地址:https://github.com/jiyanjiao/ ...

  5. CRLF在过滤XSS语句后打Cookie方式

    看了很长时间的漏洞奖励计划,学到了不少骚姿势,我觉得这个姿势很不错,总结下写篇文章发出来.针对CRLF漏洞打cookie的方法. 这里不讲概念挖掘方式了,以实战为主: 阅读文章前先参考文章:http: ...

  6. [BJOI2019]勘破神机

    [BJOI2019]勘破神机 推式子好题 m=2,斐波那契数列,$f_{n+1}$项 不妨$++l,++r$,直接求$f_n$ 求$\sum C(f_n,k)$,下降幂转化成阶乘幂,这样都是多项式了, ...

  7. 虚拟机网络配置和NFS

    Test Env: Ubuntu 16.04 VMware 克隆虚拟机 A 把一台虚拟机从一台服务器克隆到另一台服务器,拷贝.vmx(配置文件)和.vmdk文件,然后在新服务器的vmware直接打开. ...

  8. (二叉树 DFS 递归) leetcode 101. Symmetric Tree

    Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center). For e ...

  9. 寒冬之下,移动开发没人要了? 浅谈 iOS 开发者该 何去何从?

    前言: 作者 | 梅梅    文章来源 CSDN 对于移动互联网而言,2018 年像是球场上的一声裁判哨.哨声响起,高潮迭起的上半场结束.本该再创辉煌的下半场,还没开赛却被告之:规则改变.场地收缩.教 ...

  10. Linux Centos7.x下安装部署Jira和confluence以及破解方法详述

    简述 JIRA是Atlassian公司出品的项目与事务跟踪工具,被广泛应用于缺陷跟踪.客户服务.需求收集.流程审批.任务跟踪.项目跟踪和敏捷管理等工作领域. Confluence是一个专业的企业知识管 ...