• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >Golang > Go语言编程中判断文件是否存在是创建目录的方法

Go语言编程中判断文件是否存在是创建目录的方法

作者:goldensun 字体:[增加 减小] 来源:互联网

goldensun 通过本文主要向大家介绍了go语言web下载文件,go语言文件操作,go语言读文件,go语言读取文件,go语言编程pdf等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

判断文件是否存在
os.IsExists()函数和os.IsNotExists(),他们的函数的原形是func IsExist(err error) bool func IsNotExist(err error) bool 都是传入一个err返回bool 这里注意了 err已经定义好了
  /*
 var (
     ErrInvalid    = errors.New("invalid argument")
     ErrPermission = errors.New("permission denied")
     ErrExist      = errors.New("file already exists")
     ErrNotExist   = errors.New("file does not exist")
 )
*/
</div>
这里我们看到了errors这个包,那我们讲一下这个包,这个包就一个方法就是errors.New()函数原形是func New(text string) error实例代码
import (
 "errors"
 "fmt"
)

func main() {
 //这里就一个方法func New(text string) error 我们可以自己定义
 err := errors.New("widuu blog only golang")
 if err != nil {
  fmt.Println(err) //这里就是输出了我们自己定义的错误信息 //widuu blog only golang
 }
}
</div>
下面通过实例代码讲解一下
  import (
 "fmt"
 "os"
)

func main() {
 _, err := os.Open("widuu.go")
 if err != nil {
  fmt.Println(os.IsNotExist(err)) //true  证明文件已经存在
  fmt.Println(err)                //open widuu.go: no such file or directory
 }

 //这个时候你可以这样判断文件是否存在

 f, err := os.Open("widuu.go")
 if err != nil && os.IsNotExist(err) {
  fmt.Println(f, "文件不存在") //为什么打印nil 是这样的如果file不存在 返回f文件的指针是nil的 所以我们不能使用defer f.Close()会报错的
 }

//我们弄出一个文件已经存在的错误来实验os.IsExists() 如下是Os定义的常量
 /*
  var (
      ErrInvalid    = errors.New("invalid argument")
      ErrPermission = errors.New("permission denied")
      ErrExist      = errors.New("file already exists")
      ErrNotExist   = errors.New("file does not exist")
  )
 */
 fmt.Println(os.IsExist(os.ErrExist)) //这里就会输出true
 //我们后边马上提到link
 err = os.Link("osexists.go", "1.go")
 if err != nil {
  fmt.Println(os.IsExist(err))  //因为我1.go这个文件存在了 所以说返回true
 }
}
</div>


创建目录
os.Mkdir创建单个目录函数原形func Mkdir(name string, perm FileMode) error输入一个目录的名称和目录的权限,我们可以用默认的os.ModePerm然后返回的是一个error的信息,我们看下,也一块复习前边的一点知识
 import (
 "fmt"
 "os"
)

func main() {
 var path string
 if os.IsPathSeparator('\\') {  //前边的判断是否是系统的分隔符
  path = "\\"
 } else {
  path = "/"
 }
 fmt.Println(path)
 dir, _ := os.Getwd()  //当前的目录
 err := os.Mkdir(dir+path+"md", os.ModePerm)  //在当前目录下生成md目录
 if err != nil {
  fmt.Println(err)
 }
 fmt.Println("创建目录" + dir + path + "md成功")
}
</div>
os.MkdirAll()函数原形是func MkdirAll(path string, perm FileMode) error输入的是多级目录结构和权限返回的是error的信息
import (
 "fmt"
 "os"
)

func main() {
 dir, _ := os.Getwd()
 err := os.MkdirAll(dir+"/a/b/c", os.ModePerm)  //生成多级目录
 if err != nil {
  fmt.Println(err)
 }
 fmt.Println("创建文件夹" + dir + "/a/b/c成功")
}
</div>

</div>

您可能想查找下面的文章:

  • 使用Go语言实现远程传输文件
  • Go语言使用HTTP包创建WEB服务器的方法
  • Go语言编程中判断文件是否存在是创建目录的方法
  • Go语言编程中对文件读写的基本方法整理
  • 利用Go语言初步搭建一个web应用的教程
  • go语言实现通过FTP库自动上传web日志
  • GO语言实现文件上传代码分享
  • go语言遍历文件夹示例
  • go语言检测文件是否存在的方法
  • go语言读取csv文件并输出的方法

相关文章

  • Golang记录、计算函数执行耗时、运行时间的一个简单方法
  • linux下通过go语言获得系统进程cpu使用情况的方法
  • Go语言实现选择法排序实例
  • Golang排列组合算法问题之全排列实现方法
  • Go语言中更优雅的错误处理
  • Go语言流程控制之goto语句与无限循环
  • go语言通过odbc操作Access数据库的方法
  • golang 函数以及函数和方法的详解及区别
  • go语言实现抓取高清图片
  • 利用Go语言搭建WebSocket服务端方法示例

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • Go语言判断指定文件是否存在的方法
    • Go语言接口定义与用法示例
    • golang使用正则表达式解析网页
    • Go语言中常量定义方法实例分析
    • go语言通过zlib压缩数据的方法
    • Go语言使用MySql的方法
    • go语言使用RC4加密的方法
    • golang实现http服务器处理静态文件示例
    • GO语言映射(Map)用法分析
    • Go语言并发技术详解

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有