码迷,mamicode.com
首页 > 其他好文 > 详细

Golang gzip的压缩和解压

时间:2014-09-21 18:36:50      阅读:544      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   os   ar   div   sp   log   

 1 package src
 2 
 3 import (
 4     "bytes"
 5     "compress/gzip"
 6 )
 7 
 8 func GzipEncode(in []byte) ([]byte, error) {
 9     var (
10         buffer bytes.Buffer
11         out    []byte
12         err    error
13     )
14     writer := gzip.NewWriter(&buffer)
15     _, err = writer.Write(in)
16     if err != nil {
17         writer.Close()
18         return out, err
19     }
20     err = writer.Close()
21     if err != nil {
22         return out, err
23     }
24 
25     return buffer.Bytes(), nil
26 }
27 
28 func GzipDecode(in []byte) ([]byte, error) {
29     reader, err := gzip.NewReader(bytes.NewReader(in))
30     if err != nil {
31         var out []byte
32         return out, err
33     }
34     defer reader.Close()
35 
36     return ioutil.ReadAll(reader)
37 }

 

Golang gzip的压缩和解压

标签:style   blog   color   io   os   ar   div   sp   log   

原文地址:http://www.cnblogs.com/xingxueliao/p/3984567.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!