0
点赞
收藏
分享

微信扫一扫

c# 文件的压缩和解压缩 网络编程

小禹说财 2022-03-20 阅读 85
c#

c# 文件的压缩和解压缩 网络编程

using System;
using System.Collections.Generic;
using System.IO;
using System.IO.Compression;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GZipStream_压缩文件
{
    class Program
    {
        static void Main(string[] args)
        {            
            string sourpath = "D:/目标文件";//不要用文件夹测试
            string compressPath = "D:/压缩后文件";
            string DecompressPath = "D:/解压后文件";
            CompressFile(sourpath, compressPath);//压缩
            DeCompressFile(compressPath, DecompressPath);//解压
        }
        private static void CompressFile(String sourpath,String compressPath) {
            using (FileStream fsRead = File.OpenRead(sourpath))
            {
                using (FileStream fsWrite = File.OpenWrite(compressPath))
                {
                    using (GZipStream compressfsWrite = new GZipStream(fsWrite, CompressionMode.Compress))
                    {

                        Byte[] array = new Byte[1024];

                        while (true)
                        {
                            int offet = fsRead.Read(array, 0, array.Length);
                            compressfsWrite.Write(array,0,array.Length);
                            if (offet == 0) { break; }
                        }
                    }
                }
            };
        }
        private static void DeCompressFile(String compressPath, String DecompressPath)
        {
            using (FileStream fsRead = File.OpenRead(compressPath))
            {
                using (GZipStream DecompressfsRead = new GZipStream(fsRead, CompressionMode.Decompress))
                {
                    using (FileStream fsWrite = File.OpenWrite(DecompressPath))
                    {
                        Byte[] array = new Byte[1024];
                        while (true)
                        {                           
                            int offet=DecompressfsRead.Read(array, 0, array.Length);
                            fsWrite.Write(array, 0, array.Length);
                            if (offet == 0) { break; }
                        }
                    }
                }
            };

        }
    }
}

举报

相关推荐

0 条评论