Golang怎么实现文件夹的创建与删除
短信预约 -IT技能 免费直播动态提醒
本文小编为大家详细介绍“Golang怎么实现文件夹的创建与删除”,内容详细,步骤清晰,细节处理妥当,希望这篇“Golang怎么实现文件夹的创建与删除”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
创建文件夹
创建文件夹的时候往往要先判断文件夹是否存在。
样例代码如下
package main import ("bufio""fmt""io""os") //判断文件夹是否存在func HasDir(path string) (bool, error) {_, _err := os.Stat(path)if _err == nil {return true, nil}if os.IsNotExist(_err) {return false, nil}return false, _err} //创建文件夹func CreateDir(path string) {_exist, _err := HasDir(path)if _err != nil {fmt.Printf("获取文件夹异常 -> %v\n", _err)return}if _exist {fmt.Println("文件夹已存在!")} else {err := os.Mkdir(path, os.ModePerm)if err != nil {fmt.Printf("创建目录异常 -> %v\n", err)} else {fmt.Println("创建成功!")}}} func main() {CreateDir("./output")}
执行结果
创建成功!
Process finished with the exit code 0
注意
其中os.ModePerm主要是对创建文件夹的授权,了解linux的会比较熟悉。
其中 ModePerm FileMode = 0777,也就是最高权限,可读可写可执行。
也可以直接使用os.FileMode(644).String()。
删除文件和文件夹
使用os.Remove方法来删除文件,使用os.RemoveAll方法来删除文件夹。
可以看一下RemoveAll的内部实现,整体上就是遍历和递归操作。
样例代码如下
//删除文件func RemoveFile(path string) error {_err := os.Remove(path)return _err} //删除文件夹func RemoveDir(path string) error {_err := os.RemoveAll(path)return _err}
读到这里,这篇“Golang怎么实现文件夹的创建与删除”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341