Go で URL からファイルに画像を保存
Go では、net/http パッケージを通じて URL から画像をダウンロードして保存できます。 。提供されたコードには、ファイルに書き込む前に画像データを image.Image 型から []byte に変換する際に小さな問題があります。ただし、このタスクを処理するためのより簡単な方法があります。
修正されたアプローチ:
修正されたアプローチでは、画像のデコードを回避し、応答本文をファイル。これは、データ ストリームのシームレスな転送を可能にする io.Copy の利便性によって可能になります。修正されたコードは次のとおりです:
import ( "fmt" "io" "log" "net/http" "os" ) func main() { url := "http://i.imgur.com/m1UIjW1.jpg" response, err := http.Get(url) if err != nil { log.Fatal(err) } defer response.Body.Close() file, err := os.Create("/tmp/image.jpg") if err != nil { log.Fatal(err) } defer file.Close() _, err = io.Copy(file, response.Body) if err != nil { log.Fatal(err) } fmt.Println("Image downloaded and saved successfully!") }
キーポイント:
以上がGo で画像を URL からファイルに効率的に保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。