📜  在 Golang 中检查给定文件是否存在(1)

📅  最后修改于: 2023-12-03 15:07:39.794000             🧑  作者: Mango

#在 Golang 中检查给定文件是否存在

在 Golang 中检查给定文件是否存在有很多种方法。下面是其中三种方法和相应的代码示例。

使用 os 包的 Stat 函数

代码片段:

package main

import (
    "fmt"
    "os"
)

func main() {
    _, err := os.Stat("filename")
    if os.IsNotExist(err) {
        fmt.Println("file does not exist")
        return
    }
    fmt.Println("file exists")
}

在上述代码片段中,我们使用 os.Stat 函数来检查文件是否存在。如果该函数返回的错误与 os.IsNotExist 字符串匹配,则该文件不存在,否则该文件存在。

使用 os 包的 Open 函数

代码片段:

package main

import (
    "fmt"
    "os"
)

func main() {
    _, err := os.Open("filename")
    if err != nil {
        if os.IsNotExist(err) {
            fmt.Println("file does not exist")
            return
        }
    }
    fmt.Println("file exists")
}

这是另一种使用 os 包来检查文件是否存在的方法。在这种情况下,我们使用 os.Open 函数和 os.IsNotExist 函数来检查文件是否存在。

使用 ioutil 包的 ReadFile 函数

代码片段:

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    _, err := ioutil.ReadFile("filename")
    if err != nil {
        fmt.Println("file does not exist")
        return
    }
    fmt.Println("file exists")
}

上述代码片段使用了 ioutil 包的 ReadFile 函数来检查文件是否存在。该函数返回的错误将告诉我们该文件是否存在。

在使用上述方法时,务必注意相应的错误处理。如果不处理可能会引发更严重的错误。