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#程序设计有所帮助。


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3