文档章节

gzip压缩与解压缩

朝天放歌
 朝天放歌
发布于 2016/08/12 13:09
字数 197
阅读 10
收藏 0

话不多说,上代码。 GzipCompress在System.IO.Compression中。

/******************************************************************* 
 * FileName: GzipTool.cs
 * Author   : pilgrimzh
 * Date : 2016-08-12 13:08:21
 * Desc : 
 * 该工具用于对字节流进行Gzip压缩与解压缩
 * 
 * *******************************************************************/ 
 public  class GzipTool
    {

        /// <summary>
        /// gzip解压缩字节流
        /// </summary>
        /// <param name="src"></param>
        /// <returns></returns>
        public static byte[] Decompress(byte[] src)
        {
            MemoryStream decompressedMs = new MemoryStream();
            MemoryStream srcMs = new MemoryStream(src);
            using (GZipStream gzipstream = new GZipStream(srcMs, CompressionMode.Decompress, true))
            {
                gzipstream.CopyTo(decompressedMs);
            }

            return decompressedMs.GetBuffer();
        }

        /// <summary>
        /// gzip压缩字节流
        /// </summary>
        /// <param name="src"></param>
        /// <returns></returns>
        public static byte[] Compress(byte[] src)
        {
            MemoryStream compressedMs = new MemoryStream();
            
            using(GZipStream gzipstream = new GZipStream(compressedMs, CompressionMode.Compress, true))
            {
                MemoryStream srcMs = new MemoryStream(src);
                srcMs.CopyTo(gzipstream);
            }

            return compressedMs.GetBuffer();
        }
         
    }

© 著作权归作者所有

共有 人打赏支持
朝天放歌
粉丝 2
博文 18
码字总数 4175
作品 0
合肥
程序员

暂无文章

这些Spring中的设计模式,你都知道吗?

设计模式作为工作学习中的枕边书,却时常处于勤说不用的尴尬境地,也不是我们时常忘记,只是一直没有记忆。 Spring作为业界的经典框架,无论是在架构设计方面,还是在代码编写方面,都堪称行...

Java填坑之路
27分钟前
1
0
Spring Aop原理之Advisor过滤

在上文(Spring Aop之Advisor解析)中我们讲到,Spring Aop对目标bean的代理主要分为三个步骤:获取所有的Advisor,过滤当前bean可应用的Advisor和使用Advisor为当前bean生成代理对象,并且上文...

爱宝贝丶
38分钟前
0
0
JMockit学习教程

1 JMockit中文网 我觉得如果仅仅是开发自测的话,把JMockit中文网认真看一遍,就可以在项目中使用JMockit了。 http://jmockit.cn/index.htm 2 JMockit中文教程 官方文档中文版。对于不喜欢看...

SuperHeroes
50分钟前
0
0
Linux服务器几乎从不采用Arch Linux?

我们见得多的Linux服务器系统一般都是什么Ubuntu Server啊,什么Cent OS啊,什么Fedora啊,或者企业采用的Red Hat啊,为什么几乎没有Arch Linux呢?下面我将从若干个方面指出Arch Linux在服务...

linux-tao
今天
0
0
js 函数柯里化 闭包

参考 https://mp.weixin.qq.com/s/GEHL3jarDdAAcr5tQGjmDg 一个统计求和的函数 需要知道整个数组的信息,然后遍历求值 function countMoney() { let money = 0 // 温馨提示:arguments...

阿豪boy
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部