本文描述了一些在代码中创建文件和目录的通常方法。
创建文件和目录
Golang 版本
1.12.1
前言
本文描述了一些在代码中创建文件和目录的通常方法。
实现
package main
import (
"os"
)
func main() {
f, err := os.Create("created.file")
if err != nil {
panic(err)
}
f.Close()
f, err = os.OpenFile("created.byopen", os.O_CREATE|os.O_APPEND,
os.ModePerm)
if err != nil {
panic(err)
}
f.Close()
err = os.Mkdir("createdDir", 0777)
if err != nil {
panic(err)
}
err = os.MkdirAll("sampleDir/path1/path2", 0777)
if err != nil {
panic(err)
}
}
$ go run main.go
.
├── main.go
├── created.byopen
├── created.file
├── createdDir
└── sampleDir
└── path1
└── path2
原理
前面的示例展示了可以创建文件或目录的四种方法。 os.Create
函数是创建文件的最简单方法。 通过使用此功能,将创建具有0666
权限的文件。
如果需要自定义权限创建文件,则os
包的OpenFile
函数可以满足。
使用os
包的Mkdir
函数创建目录。 这样,就会创建一个具有给定权限的目录。 第二个选项是使用MkdirAll
函数。 此函数还会创建目录,但如果给定路径包含不存在的目录,则会创建路径中的所有目录(它的工作方式与Unix
的mkdir
程序的-p
选项相同)。