我有以下一段代码,它采用十六进制字符串并将其转换为字节数组;但是,当我尝试使用zlib压缩提到的字节数组时,它不起作用(我在压缩前后打印数据,但有相同的数据(:
data, err := hex.DecodeString(request.Log)
if err != nil {
panic(err)
}
fmt.Println(data)
var writer bytes.Buffer
gz := zlib.NewWriter(&writer)
if _, err = gz.Write(data); err != nil {
println("error: ", err)
return
}
gz.Flush()
if err = gz.Close(); err != nil {
println("err", err)
return
}
fmt.Println(data)
我还试着在关闭写入程序之前手动刷新它,但无济于事。
似乎在最后一行打印了错误的变量。应该是fmt.Println(writer.Bytes())