zoukankan      html  css  js  c++  java
  • golang zlib 压缩,解压缩

    package main
    
    import (
        "bytes"
        "compress/zlib"
        "fmt"
        "io"
        "os"
    )
    
    //进行zlib压缩
    func DoZlibCompress(src []byte) []byte {
        var in bytes.Buffer
        w := zlib.NewWriter(&in)
        w.Write(src)
        w.Close()
        return in.Bytes()
    }
    
    //进行zlib解压缩
    func DoZlibUnCompress(compressSrc []byte) []byte {
        b := bytes.NewReader(compressSrc)
        var out bytes.Buffer
        r, _ := zlib.NewReader(b)
        io.Copy(&out, r)
        return out.Bytes()
    }
    
    func main() {
        buff := []byte{120, 156, 202, 72, 205, 201, 201, 215, 81, 40, 207,
            47, 202, 73, 225, 2, 4, 0, 0, 255, 255, 33, 231, 4, 147}
        b := bytes.NewReader(buff)
        r, err := zlib.NewReader(b)
        if err != nil {
            panic(err)
        }
        io.Copy(os.Stdout, r)
        r.Close()
    
        zip := DoZlibCompress([]byte("hello, world
    "))
        fmt.Println(zip)
        fmt.Println(string(DoZlibUnCompress(zip)))
    }
  • 相关阅读:
    CMDB
    Linux文档编辑
    Linux文件管理
    Scrapy框架全
    爬虫基础
    C#中的泛型-1
    网络协议
    PDF抽取文字 C# with Adobe API
    PDF转图片 C# with Adobe API
    浅谈Exchange 2013开发-如何操作邮件的附件
  • 原文地址:https://www.cnblogs.com/zhangqingping/p/4323240.html
Copyright © 2011-2022 走看看