(18条消息) Go语言自学系列 | golang标准库ioutil包_COCOgsta的博客-CSDN博客_golang ioutil



Go语言自学系列 | golang标准库ioutil包

COCOgsta 已于 2022-04-09 20:55:57 修改 103 收藏
分类专栏: 视频学习笔记 文章标签: golang go

视频来源:B站《golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]》

一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!

附上汇总贴:Go语言自学系列 | 汇总_COCOgsta的博客-CSDN博客


封装一些实用的I/O函数

实例演示

讲解官方实例演示

  1. 1
    package main
  2. 2
  3. 3
    import (
  4. 4
    "fmt"
  5. 5
    "io/ioutil"
  6. 6
    "log"
  7. 7
    "os"
  8. 8
    )
  9. 9
  10. 10
    func testReadAll() {
  11. 11
    // r := strings.NewReader("hello world!")
  12. 12
  13. 13
    f, _ := os.Open("a.txt") // File实现了Reader
  14. 14
    defer f.Close()
  15. 15
  16. 16
    b, err := ioutil.ReadAll(f)
  17. 17
  18. 18
    if err != nil {
  19. 19
    fmt.Printf("err: %v\n", err)
  20. 20
    }
  21. 21
  22. 22
    fmt.Printf("string(b): %v\n", string(b))
  23. 23
    }
  24. 24
  25. 25
    func testReadDir() {
  26. 26
    fi, _ := ioutil.ReadDir(".")
  27. 27
    for _, v := range fi {
  28. 28
    fmt.Printf("v.Name(): %v\n", v.Name())
  29. 29
    }
  30. 30
    }
  31. 31
  32. 32
    func testReadFile() {
  33. 33
    b, _ := ioutil.ReadFile("a.txt")
  34. 34
    fmt.Printf("string(b): %v\n", string(b))
  35. 35
    }
  36. 36
  37. 37
    func testWriteFile() {
  38. 38
    ioutil.WriteFile("a.txt", []byte("hello world"), 0664)
  39. 39
    }
  40. 40
  41. 41
    func testTempFile() {
  42. 42
    content := []byte("temporary file's content")
  43. 43
    tmpfile, err := ioutil.TempFile("", "example")
  44. 44
    if err != nil {
  45. 45
    log.Fatal(err)
  46. 46
    }
  47. 47
  48. 48
    fmt.Printf("tmpfile.Name(): %v\n", tmpfile.Name())
  49. 49
  50. 50
    // defer os.Remove(tmpfile.Name()) // clean up
  51. 51
  52. 52
    if _, err := tmpfile.Write(content); err != nil {
  53. 53
    log.Fatal(err)
  54. 54
    }
  55. 55
    if err := tmpfile.Close(); err != nil {
  56. 56
    log.Fatal(err)
  57. 57
    }
  58. 58
    }
  59. 59
  60. 60
    func main() {
  61. 61
    // testReadAll()
  62. 62
    // testReadDir()
  63. 63
    // testReadFile()
  64. 64
    // testWriteFile()
  65. 65
    testTempFile()
  66. 66
    }
  67. 67


yg9538 2022年7月22日 22:48 596 收藏文档