我正在尝试使用“compress/gzip”包对一段字节进行 gzip。我正在写入 bytes.Buffer 并且我正在写入 45976 字节,当我尝试使用 gzip.reader 和 reader 函数解压缩内容时 - 我发现并非所有内容都被恢复。bytes.buffer 有一些限制吗?这是绕过或改变它的一种方式吗?这是我的代码(编辑):
func compress_and_uncompress() {
var buf bytes.Buffer
w := gzip.NewWriter(&buf)
i,err := w.Write([]byte(long_string))
if(err!=nil){
log.Fatal(err)
}
w.Close()
b2 := make([]byte, 80000)
r, _ := gzip.NewReader(&buf)
j, err := r.Read(b2)
if(err!=nil){
log.Fatal(err)
}
r.Close()
fmt.Println("Wrote:", i, "Read:", j)
}
测试的输出(选择字符串作为 long_string)将给出 Wrote: 45976, Read 32768
MYYA
相关分类