Avatar ·

Como verificar se um arquivo existe em Go?

Olá a todos! Sou um desenvolvedor Go iniciante, estou escrevendo uma pequena ferramenta para processamento de logs. Preciso verificar se um arquivo existe no disco antes de abri-lo. Em Python, estou acostumado com os.path.exists(), mas em Go não consigo encontrar um equivalente.

\n\n

Tentei usar os.Stat(), mas não tenho certeza se está correto. Aqui está meu código atual:

\n\n
package main\n\nimport (\n    "fmt"\n    "os"\n)\n\nfunc main() {\n    path := "/tmp/myfile.log"\n    // Como verificar se o arquivo existe?\n    _, err := os.Stat(path)\n    if err == nil {\n        fmt.Println("Arquivo existe!")\n    } else {\n        fmt.Println("Arquivo não existe!")\n    }\n}\n
\n\n

O problema é que os.Stat() retorna um erro não apenas quando o arquivo não existe, mas também em outros problemas.