您的位置:首页 > 编程语言 > Go语言

Golang gzip的压缩和解压

2014-09-21 15:18 295 查看
package src

import (
"bytes"
"compress/gzip"
)

func GzipEncode(in []byte) ([]byte, error) {
var (
buffer bytes.Buffer
out    []byte
err    error
)
writer := gzip.NewWriter(&buffer)
_, err = writer.Write(in)
if err != nil {
writer.Close()
return out, err
}
err = writer.Close()
if err != nil {
return out, err
}

return buffer.Bytes(), nil
}

func GzipDecode(in []byte) ([]byte, error) {
reader, err := gzip.NewReader(bytes.NewReader(in))
if err != nil {
var out []byte
return out, err
}
defer reader.Close()

return ioutil.ReadAll(reader)
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: