Warm tip: This article is reproduced from serverfault.com, please click

go-将base64转换为图像并将其保存在本地的最佳方法是什么?

(go - what is the best way to convert base64 to image and save it locally?)

发布于 2020-11-29 07:24:04

从客户端收到的照片是在base64中转换的,现在我必须将base64解码为图像并将其保存在本地文件夹中,该怎么办?

Questioner
Masud Morshed
Viewed
1
Brits 2020-11-29 16:14:32

该代码不起作用。

你的代码将无法编译;base64.NewDecoder返回一个io.Reader; 你不能将[]byte()其转换为字节片(ioutil.ReadAll可以为你完成)。但是,没有必要这样做;你可以将复制Reader到文件:

dec := base64.NewDecoder(base64.StdEncoding, strings.NewReader(photo[i+1:]))
f, err := os.Create("/var/www/upload/" + req.Title + ".png")
if err != nil {
    panic(err)
}
defer f.Close()
_, err = io.Copy(f, dec)
if err != nil {
    panic(err)
}