go读取gzip格式的压缩包
package main
// 引入所需包
import (
"os"
"compress/gzip"
"io/ioutil"
"fmt"
)
// gzip文件
var fn = "./113.200.251.66_1510825558_A6D39783B05943D8ACA64F397748CF1B_vdn.gz"
func main() {
println(fn)
// 打开本地gz格式压缩包
fr, err := os.Open(fn)
if err != nil {
panic(err)
} else {
println("open file success!")
}
// defer: 在函数退出时,执行关闭文件
defer fr.Close()
// 创建gzip文件读取对象
gr, err := gzip.NewReader(fr)
if err != nil {
panic(err)
}
// defer: 在函数退出时,执行关闭gzip对象
defer gr.Close()
// 读取gzip对象内容
rBuf, err := ioutil.ReadAll(gr)
if err != nil {
fmt.Println("[read gzip data err]: ", err)
}
// 以文本形式输出
fmt.Printf("%s\n", rBuf)
}
输出: ABCDEFG