欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 高考 > 下载文件(Go语言)

下载文件(Go语言)

2024/12/1 5:22:23 来源:https://blog.csdn.net/a1546464545454/article/details/141308019  浏览:    关键词:下载文件(Go语言)

在 Go 语言中,可以使用标准库中的 net/http 包来下载文件。以下是一个简单的示例代码,展示了如何从 URL 下载文件并保存到本地:

package mainimport ("fmt""io""net/http""os"
)func main() {// 要下载的文件 URLurl := "https://example.com/file.zip"// 本地保存路径filePath := "file.zip"// 创建 HTTP GET 请求resp, err := http.Get(url)if err != nil {fmt.Println("Error downloading file:", err)return}defer resp.Body.Close()// 创建本地文件outFile, err := os.Create(filePath)if err != nil {fmt.Println("Error creating file:", err)return}defer outFile.Close()// 将下载的内容写入本地文件_, err = io.Copy(outFile, resp.Body)if err != nil {fmt.Println("Error saving file:", err)return}fmt.Println("File downloaded successfully:", filePath)
}

代码解释:

  • http.Get(url):发起一个 GET 请求,获取文件内容。如果请求失败,返回错误信息。
  • defer resp.Body.Close():确保在函数结束时关闭响应体,以释放资源。
  • os.Create(filePath):在本地创建一个空文件,准备写入下载的内容。
  • io.Copy(outFile, resp.Body):将从 URL 获取的文件内容复制到本地文件中。
  • defer outFile.Close():在函数结束时关闭文件,确保文件内容正确写入并保存。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com