Golang:为什么 compress/gzip Read 函数不读取文件内容?

我制作了一个文本文件,然后用gzip. 然后我运行以下go程序来读取该压缩文件的内容。


package main


import (

    "compress/gzip"

    "fmt"

    "os"

)


func main() {

    handle, err := os.Open("zipfile.gz")

    if err != nil {

        fmt.Println("[ERROR] File Open:", err)

    }

    defer handle.Close()


    zipReader, err := gzip.NewReader(handle)

    if err != nil {

        fmt.Println("[ERROR] New gzip reader:", err)

    }

    defer zipReader.Close()


    var fileContents []byte

    bytesRead, err := zipReader.Read(fileContents)

    if err != nil {

        fmt.Println("[ERROR] Reading gzip file:", err)

    }

    fmt.Println("[INFO] Number of bytes read from the file:", bytesRead)

    fmt.Printf("[INFO] Uncompressed contents: '%s'\n", fileContents)

}

我得到的答复如下:


$ go run zipRead.go

[INFO] Number of bytes read from the file: 0

[INFO] Uncompressed contents: ''

为什么我没有从文件中获取任何内容?


我在 OS X 和 Ubuntu 上都创建了 zip 文件。我已经go在 OS X 和 Ubuntu 上构建了这个程序,结果相同。


一只甜甜圈
浏览 148回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go