Go语言程序创建目录


Go语言拥有os和io等内部包,用于创建新目录。这里,我们将通过两个示例来创建目录。在第一个示例中,我们将使用os.Mkdir函数,在第二个示例中,我们将使用ioutil.WriteFile函数来执行程序。

方法1:使用os.Mkdir函数

在此方法中,使用os.Mkdir函数创建一个名为dirName变量的目录。新目录的权限位是os.Mkdir的第二个输入,我们将其设置为0755。(所有者具有读、写和执行权限,其他用户具有读和执行权限)。如果目录创建成功,程序将打印“目录创建成功!”,否则将产生错误消息。

语法

os.Mkdir()

Go语言中的os.Mkdir函数有助于创建具有指定名称和权限位(模式)的新目录。

算法

  • 步骤1 − 创建一个包main,并在程序中声明fmt(格式化包)和os包,其中main生成可执行代码,fmt帮助格式化输入和输出。

  • 步骤2 − 创建一个目录名变量,并将其分配给要创建的新目录。

  • 步骤3 − 使用os.Mkdir函数创建新目录。

  • 步骤4 − 如果在创建目录时存在错误,请使用fmt.Println()函数在控制台上打印错误,其中ln表示换行,然后返回。

  • 步骤5 − 如果目录创建成功,请使用步骤4中使用的语句打印成功消息。

示例

在此示例中,我们将使用os.Mkdir函数创建新目录。

package main
import (
   "fmt"
   "os" //import fmt and os package 
)
//create main function to execute the program 
func main() {
   directoryname := "newdir"
   err := os.Mkdir(directoryname, 0755) //create a directory and give it required permissions
   if err != nil {
      fmt.Println(err) //print the error on the console
      return
   }
   fmt.Println("Directory created successfully!") //print the success message if directory is created successfully
}

输出

Directory created successfully!

方法2:使用io/ioutil包

在此方法中,使用ioutil.WriteFile函数创建具有名称和权限位的空文件。如果函数返回nil错误并且文件成功创建,我们将打印成功。WriteFile函数将创建目录,如果在创建目录时出现错误,我们将打印错误消息。

语法

Ioutil.WriteFile()

Go语言中的ioutil.WriteFile函数用于将字节切片写入文件。

算法

  • 步骤1 − 创建一个包main,并在程序中声明fmt(格式化包)和io/ioutil包,其中main生成可执行代码,fmt帮助格式化输入和输出。

  • 步骤2 − 创建函数main,并在该函数中创建一个变量directoryname并将其分配给newdir。

  • 步骤3 − 使用ioutil包函数iouti.WriteFile函数创建目录。

  • 步骤4 − 如果在创建目录时出现错误,请在控制台上打印错误并返回。

  • 步骤5 − 如果目录创建成功,请在控制台上打印成功语句。

  • 步骤6 − 打印语句由fmt.Println()函数执行,其中ln表示换行。

示例

在此示例中,我们将使用io/ioutil包函数创建新目录。

package main
import (
   "fmt"
   "io/ioutil"  //import fmt and io/ioutil package
)

//create main function to execute the program
func main() {
   directoryname := "newdir"
   err := ioutil.WriteFile(directoryname, []byte(""), 0755) //create new directory and give it permissions 
   if err != nil {
      fmt.Println(err)     //print the error if there is an error persisting
      return
   }
   fmt.Println("Directory created successfully!") //if directory is created successfully print success
}

输出

Directory created successfully!

结论

我们使用两种方法执行了创建目录的程序。在第一种方法中,我们使用了os.Mkdir函数,在第二种方法中,我们使用了io/ioutil包来执行程序。

更新于: 2023年2月22日

2K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告
© . All rights reserved.