package main import ( "fmt" "os" ) func main() { path := "I:\\test" //以只读的方式打开目录 f, err := os.OpenFile(path, os.O_RDONLY, os.ModeDir) if err != nil { fmt.Println(err.Error()) } //延迟关闭目录 defer f.Close() }
打开目录我们也使用 OpenFile 函数,但要指定不同的参数来通知系统,要打开的是一个目录文件。
func OpenFile(name string, flag int, perm FileMode) (*File, error)
参数1:name,表示要打开的目录名称。使用绝对路径较多
参数2:flg,表示打开文件的读写模式。可选择:
O_RDONLY只读模式、O_WRONLY只写模式、O_RDWR读写模式
参数3:perm,表示打开权限。但对于目录来说略有不同。通常传os.ModeDir。
返回值:由于是操作目录,所以file是指向目录的文件指针。error中保存错误信息。