(18条消息) Go语言自学系列 | golang标准库os模块 - 文件目录相关_COCOgsta的博客-CSDN博客_go语言os库



Go语言自学系列 | golang标准库os模块 - 文件目录相关

COCOgsta 已于 2022-04-09 20:57:30 修改 50 收藏
文章标签: golang go

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

一边学习一边整理老师的课程内容及试验笔记,并与大家分享,请移步至知乎网站,谢谢支持!

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


os标准库实现了平台(操作系统)无关的编程接口。

  1. 1
    package main
  2. 2
  3. 3
    import (
  4. 4
    "fmt"
  5. 5
    "os"
  6. 6
    )
  7. 7
  8. 8
    // 创建文件
  9. 9
    func createFile() {
  10. 10
    f, err := os.Create("test.txt")
  11. 11
    if err != nil {
  12. 12
    fmt.Printf("err: %v\n", err)
  13. 13
    } else {
  14. 14
    fmt.Printf("f: %v\n", f)
  15. 15
    }
  16. 16
    }
  17. 17
  18. 18
    // 创建目录
  19. 19
    func createDir() {
  20. 20
    // 创建单个目录
  21. 21
    /* err := os.Mkdir("test", os.ModePerm)
  22. 22
    if err != nil {
  23. 23
    fmt.Printf("err: %v\n", err)
  24. 24
    } */
  25. 25
    err := os.MkdirAll("test/a/b", os.ModePerm)
  26. 26
    if err != nil {
  27. 27
    fmt.Printf("err: %v\n", err)
  28. 28
    }
  29. 29
    }
  30. 30
  31. 31
    // 删除目录
  32. 32
    func removeDir() {
  33. 33
    /* err := os.Remove("test.txt")
  34. 34
    if err != nil {
  35. 35
    fmt.Printf("err: %v\n", err)
  36. 36
    } */
  37. 37
  38. 38
    err := os.RemoveAll("test")
  39. 39
    if err != nil {
  40. 40
    fmt.Printf("err: %v\n", err)
  41. 41
    }
  42. 42
    }
  43. 43
  44. 44
    // 获得工作目录
  45. 45
    func getWd() {
  46. 46
    dir, err := os.Getwd()
  47. 47
    if err != nil {
  48. 48
    fmt.Printf("err: %v\n", err)
  49. 49
    } else {
  50. 50
    fmt.Printf("dir: %v\n", dir)
  51. 51
    }
  52. 52
    }
  53. 53
  54. 54
    // 修改工作目录
  55. 55
    func chWd() {
  56. 56
    err := os.Chdir("d:/")
  57. 57
    if err != nil {
  58. 58
    fmt.Printf("err: %v\n", err)
  59. 59
    }
  60. 60
    fmt.Println(os.Getwd())
  61. 61
    }
  62. 62
  63. 63
    // 获得临时目录
  64. 64
    func getTemp() {
  65. 65
    s := os.TempDir()
  66. 66
    fmt.Printf("s: %v\n", s)
  67. 67
    }
  68. 68
  69. 69
    // 重命名文件
  70. 70
    func renameFile() {
  71. 71
    err := os.Rename("test.txt", "test2.txt")
  72. 72
    if err != nil {
  73. 73
    fmt.Printf("err: %v\n", err)
  74. 74
    }
  75. 75
    }
  76. 76
  77. 77
    // 读文件
  78. 78
    func readFile() {
  79. 79
    b, err := os.ReadFile("test2.txt")
  80. 80
    if err != nil {
  81. 81
    fmt.Printf("err: %v\n", err)
  82. 82
    } else {
  83. 83
    fmt.Printf("b: %v\n", string(b[:]))
  84. 84
    }
  85. 85
    }
  86. 86
  87. 87
    // 写文件
  88. 88
    func writeFile() {
  89. 89
    s := "hello world"
  90. 90
    os.WriteFile("test2.txt", []byte(s), os.ModePerm)
  91. 91
    }
  92. 92
  93. 93
    func main() {
  94. 94
    // createFile()
  95. 95
    // createDir()
  96. 96
    // removeDir()
  97. 97
    // getWd()
  98. 98
    // chWd()
  99. 99
    // renameFile()
  100. 100
    // readFile()
  101. 101
    // writeFile()
  102. 102
    // getTemp()
  103. 103
    }


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