温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

go语言如何判断一个文件是否存在

发布时间:2023-02-03 11:03:37 来源:亿速云 阅读:132 作者:iii 栏目:编程语言

这篇文章主要介绍“go语言如何判断一个文件是否存在”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“go语言如何判断一个文件是否存在”文章能帮助大家解决问题。

在go语言中,判断一个文件是否存在,需要使用到“os.Stat()”函数,根据该函数返回的error接口的信息来进行判断;语法“_, err := os.Stat(path) if err == nil{return true, nil}if os.IsNotExist(err){return false, nil}”。如果返回的error为空,则说明文件是存在的。

在 Golang 中,判断 文件 或者目录是否存在,需要使用到 os.Stat 函数,根据 os.Stat 函数返回的 error 接口的信息来判断。

Go语言判断文件是否存在的语法

_, err := os.Stat(path)
if err == nil {
    return true, nil
}
if os.IsNotExist(err) {
    return false, nil
}

说明:

使用 os.Stat 获取目录信息,如果返回的 error 为空,那么说明文件是存在的,如果返回的错误信息是 os.IsNotExist 说明文件是不存在的。

判断文件是否存在的案例

package main
import (
	"fmt"
	"os"
)
func main() {
	var(
		fileName = "C:/haicoder.txt"
	)
	_, err := os.Stat(fileName)
	if err == nil{
		fmt.Println("File exist")
		return
	}
	if os.IsNotExist(err){
		fmt.Println("File not exist")
		return
	}
	fmt.Println("File error")
	return
}

程序运行后,控制台输出如下:

go语言如何判断一个文件是否存在

使用 os.Stat 获取文件的信息,根据返回的错误信息判断文件是否存在,如果 err 是空,那么说明文件是存在的,如果返回的 err 不是空,并且是 IsNotExist ,那么说明文件不存在。

因为,我们运行程序时,文件 “C:/haicoder.txt” 不存在,因此,程序输出了 “File not exist”,现在,我们创建文件 “C:/haicoder.txt”,再次运行程序,控制台输出如下:

go语言如何判断一个文件是否存在

此时,我们看到,程序输出了 “File exist”。

Go语言判断文件是否存在总结

_, err := os.Stat(path)
if err == nil {
    return true, nil
}
if os.IsNotExist(err) {
    return false, nil
}

使用 os.Stat 获取目录信息,如果返回的 error 为空,那么说明文件是存在的,如果返回的错误信息是 os.IsNotExist 说明文件是不存在的。我们也可以将该功能封装为一个函数:

func PathExists(path string) (bool, error) {
_, err := os.Stat(path)
if err == nil {
return true, nil
}
if os.IsNotExist(err) {
return false, nil
}
return false, err
}

关于“go语言如何判断一个文件是否存在”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI