我已经能够遍历tar文件中的文件,但我坚持如何以字符串形式读取这些文件的内容。我想知道如何以字符串形式打印文件的内容?使用golang阅读tar文件的内容而不解压
这是我的代码如下
package main
import (
"archive/tar"
"fmt"
"io"
"log"
"os"
"bytes"
"compress/gzip"
)
func main() {
file, err := os.Open("testtar.tar.gz")
archive, err := gzip.NewReader(file)
if err != nil {
fmt.Println("There is a problem with os.Open")
}
tr := tar.NewReader(archive)
for {
hdr, err := tr.Next()
if err == io.EOF {
break
}
if err != nil {
log.Fatal(err)
}
fmt.Printf("Contents of %s:\n", hdr.Name)
}
}
这会读取,但不会返回正确类型的内容,它只是uint8类型的一部分。没有真正的内容。 –
你不能指望读者知道类型。它负责处理其内容。 – AJPennster
@AJPennster你知道任何简单的方法来完成转换。我很困惑如何一个切片元素不返回一行字符串,但还没有一个int。我不知道如何去做转换。 –