👌

Goでファイルをダウンロードする

2020/10/28に公開

ファイルをダウンロードしてローカルファイルに保存する

package main

import (
    "io"
    "net/http"
    "os"
)

func main() {

    fileUrl := "https://4.bp.blogspot.com/-2-Ny23XgrF0/Ws69gszw2jI/AAAAAAABLdU/unbzWD_U8foWBwPKWQdGP1vEDoQoYjgZwCLcBGAs/s1600/top_banner.jpg"

    if err := DownloadFile("avatar.jpg", fileUrl); err != nil {
        panic(err)
    }
}

func DownloadFile(filepath string, url string) error {

    resp, err := http.Get(url)
    if err != nil {
        return err
    }
    defer resp.Body.Close()

    out, err := os.Create(filepath)
    if err != nil {
        return err
    }
    defer out.Close()

    _, err = io.Copy(out, resp.Body)
    return err
}

Discussion