如何从网上获取zip存档文件并在Go中解压缩?看起来archive/zip
包提供了一组解析压缩文件的工具。但是,为了解压缩压缩文件,我必须使用zip.OpenReader
,它将文件名作为字符串。
那么如何从Web获取压缩文件,并将其作为字符串放入上述函数中?或者我可能需要首先获取文件并将其放在我的文件系统的一个目录中,然后阅读它?
答案 0 :(得分:5)
看来为了解压缩拉链,你需要能够寻找任意位置。这意味着除非您想要做一些奇特的事情,否则它需要是本地文件或完全在内存中。
假设您已下载了压缩文件并将其保存在[]byte
中,您希望执行以下操作:
zipReader := zip.NewReader(bytes.NewReader(zipData), len(zipData))