我正在从S3下载一个zip文件,如下所示:
buff := &aws.WriteAtBuffer{}
downloader := s3manager.NewDownloader(session.New(config))
_, err := downloader.Download(buff, &input)
if err != nil {
log.Println(err)
return err
}
data := buff.Bytes()
我将'data'发送到一个用Python3编写的客户机,需要将这个字节数组转换回zip文件并放入指定的目录中。我试过了:
^{pr2}$但我得到一个错误:
OSError: [Errno 36] File name too long"
我只想“重建”zip文件并将其保存到一个目录中。在
我知道怎么做。在go中,您需要base64对其进行编码(作为一个字符串)。在
然后在python中,它很简单(其中“file_bytes”是base64编码的字符串):
^{pr2}$bam,你有一个重新组合的zip文件。在
读the documentation,ZipFile类的第一个参数是文件名或文件对象,而不是Zip内容。在
如果您想在不创建真正的文件的情况下读取内存中的ZipFile,则需要使用io.BytesIO包装文件字节。在
相关问题 更多 >
编程相关推荐