在Go中读取xz文件

4
我该如何在Go程序中读取xz文件?当我尝试使用lzma读取时,出现了error in lzma header错误。

我猜测这个库只支持 LZMA,而不支持 xz 存档所使用的 LZMA2。 - nemo
2个回答


2

我最近创建了一个XZ解压缩包,它不需要Cgo。您可以在此处找到:

https://github.com/xi2/xz

一个将标准输入解压缩到标准输出的程序:

package main

import (
    "io"
    "log"
    "os"

    "github.com/xi2/xz"
)

func main() {
    r, err := xz.NewReader(os.Stdin, 0)
    if err != nil {
        log.Fatal(err)
    }
    _, err = io.Copy(os.Stdout, r)
    if err != nil {
        log.Fatal(err)
    }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接