1. Introduction
Creating directories is a common task when working with file systems in any programming environment. In Go, you can create directories using functions provided by the os package. This blog post will show you how to create a directory in Go.
2. Program Steps
1. Use os.Mkdir to create a single directory.
2. Use os.MkdirAll to create a directory along with any necessary parent directories.
3. Handle any errors that occur during directory creation.
3. Code Program
package main
import (
"fmt"
"os"
)
func main() {
// Directory to be created
dirPath := "example_dir"
// Step 1: Use os.Mkdir to create a single directory
err := os.Mkdir(dirPath, 0755)
if err != nil {
fmt.Println("Error creating directory:", err)
return
}
fmt.Println("Directory created:", dirPath)
// Directory to be created along with parent directories
nestedDirPath := "nested_dir/sub_dir"
// Step 2: Use os.MkdirAll to create directory along with parents
err = os.MkdirAll(nestedDirPath, 0755)
if err != nil {
fmt.Println("Error creating nested directories:", err)
return
}
fmt.Println("Nested directories created:", nestedDirPath)
}
Output:
Directory created: example_dir Nested directories created: nested_dir/sub_dir
Explanation:
1. package main - The package declaration for the Go program.
2. import "fmt" and import "os" - Importing the necessary packages for formatted output and operating system functionality.
3. dirPath is the path where a new directory will be created using os.Mkdir.
4. os.Mkdir is called with the dirPath and the directory permissions set to 0755 (read/write/execute for the owner, read/execute for others).
5. If os.Mkdir returns an error, it is printed, and the program exits early.
6. If the directory is created successfully, a confirmation message is printed.
7. nestedDirPath represents a path that includes a nested directory structure.
8. os.MkdirAll is used for creating nested directories, which also ensures that all parent directories are created.
9. If os.MkdirAll encounters an error, the error is printed; otherwise, a success message is printed.
10. The output confirms the successful creation of both the single directory and the nested directories.
Comments
Post a Comment