下载文件

    1. package main
    2. import (
    3. "io"
    4. "log"
    5. "net/http"
    6. "os"
    7. )
    8. func main() {
    9. newFile, err := os.Create("devdungeon.html")
    10. if err != nil {
    11. log.Fatal(err)
    12. }
    13. defer newFile.Close()
    14. url := "http://www.devdungeon.com/archive"
    15. response, err := http.Get(url)
    16. defer response.Body.Close()
    17. // 将HTTP response Body中的内容写入到文件
    18. // Body满足reader接口,因此我们可以使用ioutil.Copy
    19. numBytesWritten, err := io.Copy(newFile, response.Body)
    20. if err != nil {
    21. log.Fatal(err)
    22. }
    23. log.Printf("Downloaded %d byte file.\n", numBytesWritten)
    24. }