c#里的解压缩
来源:互联网 发布:javascript 下拉刷新 编辑:程序博客网 时间:2024/04/27 20:28
/// <summary>
/// 功能:解压缩
/// 作者:wthrose
/// </summary>
/// <param name="FileName"></param>
/// <param name="OutFileName"></param>
public void GZipDecompress(string FileName, string OutFileName)
{
FileStream infile, outfile;
try
{
infile = new FileStream(FileName, FileMode.Open, FileAccess.Read, FileShare.Read);
byte[] buffer = new byte[infile.Length];
int count = infile.Read(buffer, 0, buffer.Length);
infile.Close();
MemoryStream ms = new MemoryStream();
ms.Write(buffer, 0, buffer.Length);
ms.Position = 0;
GZipStream decompressedzipStream = new GZipStream(ms, CompressionMode.Decompress, true);
MemoryStream output = new MemoryStream();
byte[] buff = new byte[4096];
int read = -1;
read = decompressedzipStream.Read(buff, 0, buff.Length);
while (read > 0)
{
output.Write(buff, 0, read);
read = decompressedzipStream.Read(buff, 0, buff.Length);
}
decompressedzipStream.Close();
outfile = new FileStream(OutFileName, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);
outfile.Write(output.ToArray(), 0, output.ToArray().Length);
outfile.Close();
ms.Close();
}
catch(Exception ex)
{
//this.listBox1.Items.Add(ex.ToString());
}
}
/// <summary>
/// 功能:压缩
/// 作者:wthorse
/// </summary>
/// <param name="FileName"></param>
/// <param name="OutFileName"></param>
public void GZipCompress(string FileName,string OutFileName)
{
FileStream infile,outfile;
try
{
infile = new FileStream(FileName, FileMode.Open, FileAccess.Read, FileShare.Read);
byte[] buffer = new byte[infile.Length];
int count = infile.Read(buffer, 0, buffer.Length);
if (count != buffer.Length)
{
infile.Close();
//this.listBox1.Items.Add("读取文件失败");
return;
}
infile.Close();
MemoryStream ms = new MemoryStream();
GZipStream compressedzipStream = new GZipStream(ms, CompressionMode.Compress, true);
compressedzipStream.Write(buffer, 0, buffer.Length);
compressedzipStream.Close();
outfile = new FileStream(OutFileName, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);
outfile.Write(ms.ToArray(), 0, ms.ToArray().Length);
outfile.Close();
ms.Close();
}
catch(Exception ex)
{
//this.listBox1.Items.Add(ex.ToString());
}
- c#里的解压缩
- C# 中压缩与解压缩的方法
- C#对ZIP的压缩与解压缩
- 用tar解压缩压缩包里的某个指定文件
- C#里的InputBox
- C#里的foreach
- C#里的委托
- C#里的InputBox
- C# 里的 #region
- c#里的接口
- C# 里的event
- C#里的&&与&
- c#里的checkbox
- C# 里的多线程
- C#里的标点符号
- C# 里的Timer
- C#里的冒号
- 利用C#解压缩文件
- Java中对HashMap的深度分析与比较
- HashTable 对比 HashMap
- 页面加载
- 源码分析:HashMap
- 解决"无法找到脚本库 "/aspnet_client/system_web/1_1_4322/WebUIValidation.js'.请尝到试手动放置此文件,或通过运行"aspnet_regiis -c"重新安装。"?
- c#里的解压缩
- 手工添加系统服务
- 处理基于XML的聊天程序的操作请求
- 提高ASP.Net应用程序性能的十大方法
- 提高浏览体验的五十个最佳FireFox扩展插件
- MOP 堕落了
- 屏蔽窗体的最大、最小化和关闭按钮
- 如何成为一名优秀的程序员?
- asp.net 中repeater控件的使用