C#文件流进行压缩和解压缩的方法

 更新时间:2015年05月13日 10:36:34   作者:令狐不聪  
这篇文章主要介绍了C#文件流进行压缩和解压缩的方法,涉及C#文件流操作的相关技巧,需要的朋友可以参考下

本文实例讲述了C#文件流进行压缩和解压缩的方法。分享给大家供大家参考。具体实现方法如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.IO.Compression;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace 文件流
{
 public partial class Form1 : Form
 {
 public Form1()
 {
  InitializeComponent();
 }
 private void button1_Click(object sender, EventArgs e)
 {
  string s = "好好好好好好好好好好好好好好好好好好好好好哈好好好好好啊";
  for (int i = 0; i < 10; i++)
  {
  s += s;
  }
  using (FileStream fs=File.OpenWrite(@"c:\1.txt"))
  {
  using (GZipStream zipStream=new GZipStream(fs,CompressionMode.Compress))
  {
   byte[] bytes = Encoding.UTF8.GetBytes(s);
   zipStream.Write(bytes,0,bytes.Length);
   MessageBox.Show("压缩成功!");  
  }
  }
 }
 private void button2_Click(object sender, EventArgs e)
 {
  using (FileStream fs=File.OpenRead(@"c:\1.txt"))
  {
  using (GZipStream zipStream=new GZipStream(fs,CompressionMode.Decompress))
  {
   using (FileStream fs1=File.OpenWrite(@"c:\upzip.txt"))
   {
   int bytesRead;
   byte[] bytes=new byte[1024];
   while((bytesRead=zipStream.Read(bytes,0,bytes.Length))>0)
   {
    fs1.Write(bytes,0,bytesRead);
   }
   MessageBox.Show("解压成功!");  
   }
  }
  }
 }
 }
}

希望本文所述对大家的C#程序设计有所帮助。

相关文章

  • List<>中Find的用法小结

    List<>中Find的用法小结

    本篇文章主要是对List<>中Find的用法进行了总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-01-01
  • Unity使用鼠标旋转物体效果

    Unity使用鼠标旋转物体效果

    这篇文章主要为大家详细介绍了Unity使用鼠标旋转物体效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • 对指定的网页进行截图的效果 C#版

    对指定的网页进行截图的效果 C#版

    对指定的网页进行截图的效果 C#版...
    2007-08-08
  • C#基于JsonConvert解析Json数据的方法实例

    C#基于JsonConvert解析Json数据的方法实例

    最近初接触C#语言,发现JSON解析这块和JAVA差异过大,下面这篇文章主要给大家介绍了关于C#基于JsonConvert解析Json数据的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-04-04
  • C#爬虫通过代理刷文章浏览量

    C#爬虫通过代理刷文章浏览量

    本篇文章给大家分享了C#爬虫通过代理刷文章浏览量的详细步骤和方法,有兴趣的朋友可以参考学习下。
    2018-07-07
  • 基于C#实现Ping工具类

    基于C#实现Ping工具类

    Ping是一种常用的测试网络连接的工具,可以测试网络延迟和连接状况,以及判断网络是否可用,本文将通过框架类库中的Ping类来实现Ping功能,感兴趣的小伙伴可以了解下
    2023-11-11
  • C#函数out多个返回值问题

    C#函数out多个返回值问题

    这篇文章主要介绍了C#函数out多个返回值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • C#无损压缩图片

    C#无损压缩图片

    本文主要介绍了C#无损压缩图片的相关知识。具有很好的参考价值。下面跟着小编一起来看下吧
    2017-04-04
  • C#入门教程之集合ArrayList用法详解

    C#入门教程之集合ArrayList用法详解

    这篇文章主要介绍了C#入门教程之集合ArrayList用法,结合具体实例分析了C#中集合的概念、功能、创建与使用方法,需要的朋友可以参考下
    2017-06-06
  • C#9.0主要特性的一些想法

    C#9.0主要特性的一些想法

    这篇文章主要给大家介绍了关于C#9.0主要特性的一些想法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11

最新评论