最新Go-文件目录操作分类详解(创建、打开、关闭、读取、写入,满满干货指导
warning:
这篇文章距离上次修改已过205天,其中的内容可能已经有所变动。
在Go语言中,文件和目录的操作主要通过os
和io/ioutil
包来完成。以下是一些常用的文件和目录操作函数:
- 创建目录:
err := os.Mkdir("new_directory", 0755)
if err != nil {
log.Fatal(err)
}
- 创建多级目录:
err := os.MkdirAll("new_directory/sub_directory", 0755)
if err != nil {
log.Fatal(err)
}
- 删除目录:
err := os.Remove("directory_to_remove")
if err != nil {
log.Fatal(err)
}
- 删除多级目录:
err := os.RemoveAll("directory_to_remove")
if err != nil {
log.Fatal(err)
}
- 打开文件:
file, err := os.Open("file_to_open")
if err != nil {
log.Fatal(err)
}
defer file.Close()
- 创建并写入文件:
data := "hello, world!"
err := ioutil.WriteFile("new_file.txt", []byte(data), 0644)
if err != nil {
log.Fatal(err)
}
- 读取文件:
buf, err := ioutil.ReadFile("file_to_read.txt")
if err != nil {
log.Fatal(err)
}
fmt.Print(string(buf))
- 读取目录:
files, err := ioutil.ReadDir("directory_to_read")
if err != nil {
log.Fatal(err)
}
for _, file := range files {
fmt.Println(file.Name())
}
这些操作涵盖了文件和目录的基本创建、删除、打开、关闭、读取和写入操作。在实际应用中,你可能还需要处理其他更复杂的情况,如文件的读写锁定、文件的读取和写入进度等。
评论已关闭