Home > Article > Backend Development > How to determine whether a file exists in Go language
In the Go language, to determine whether a file exists, you need to use the "os.Stat()" function, and judge based on the error interface information returned by the function; the syntax "_, err := os .Stat(path) if err == nil{return true, nil}if os.IsNotExist(err){return false, nil}". If the error returned is empty, the file exists.
The operating environment of this tutorial: Windows 7 system, GO version 1.18, Dell G3 computer.
In Golang, to determine whether a file or directory exists, you need to use the os.Stat function and judge based on the error interface information returned by the os.Stat function.
The syntax of Go language to determine whether a file exists
_, err := os.Stat(path) if err == nil { return true, nil } if os.IsNotExist(err) { return false, nil }
Instructions:
Use os.Stat to obtain directory information. If the returned error is empty, Then the file exists. If the error message returned is os.IsNotExist, the file does not exist.
Case of determining whether the file exists
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 }
After the program is run, the console output is as follows:
Use os.Stat obtains file information and determines whether the file exists based on the returned error message. If err is empty, it means the file exists. If the returned err is not empty and is IsNotExist, it means the file does not exist.
Because, when we run the program, the file "C:/haicoder.txt" does not exist, therefore, the program outputs "File not exist", now, we create the file "C:/haicoder.txt", Run the program again, and the console output is as follows:
At this time, we see that the program outputs "File exist".
Summary of Go language to determine whether a file exists
_, err := os.Stat(path) if err == nil { return true, nil } if os.IsNotExist(err) { return false, nil }
Use os.Stat to obtain directory information. If the error returned is empty, it means that the file exists. If it is returned The error message is os.IsNotExist stating that the file does not exist. We can also encapsulate this function into a function:
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 }
[Related recommendations: Go video tutorial, Programming teaching]
The above is the detailed content of How to determine whether a file exists in Go language. For more information, please follow other related articles on the PHP Chinese website!