compress/bzip2
bzip2包实现bzip2的解压缩。没有对应的压缩方式。为了测试,可以使用bzip2 命令压缩一个测试文件test.txt.bz2.
相关文章:https://www.cnblogs.com/wj78080458/p/10062068.html
Type
如果发现bzip2数据在语法上无效,则返回结构错误。
type StructuralError string
Function
func NewReader(r io.Reader) io.Reader
NewReader返回一个从r读取 bzip2 压缩数据并解压缩后返回给调用者的 io.Reader 。
ffunc (s StructuralError) Error() string {
return "bzip2 data invalid: " + string(s)
}
错误信息。
Demo
package main
import (
"compress/bzip2"
"fmt"
"io"
"os"
)
func main() {
zip2File := "test.txt.bz2"
unzip2FileName := "unzipfile2.txt"
//打开要解包的文件,zip2File是要解包的 bz2 文件的路径
fr, err := os.Open(zip2File)
if err != nil {
fmt.Println(err.Error())
}
defer fr.Close()
// 创建 bzip2.Reader,准备执行解包操作
br := bzip2.NewReader(fr)
//创建空文件,准备写入解压后的数据
bw, err := os.Create(unzip2FileName)
if err != nil {
fmt.Println(err.Error())
}
defer bw.Close()
// 写入解压后的数据
_, err = io.Copy(bw, br)
if err != nil {
fmt.Println(err.Error())
}
}