À moins que vous n'utilisiez une méthode telle que OpenFile (), il est bon de s'assurer que le fichier que vous souhaitez utiliser existe; Sinon, cela peut conduire à des erreurs inattendues.
Dans cet article, nous aurons besoin du package OS de la bibliothèque standard Go pour vérifier si un fichier existe avant de l'utiliser.
Méthode Stat Golang
Nous pouvons utiliser la méthode Golang stat () pour vérifier si un fichier existe ou non. La syntaxe de la fonction est comme indiqué:
func stat (name String) (fileinfo, error)
La fonction prend le nom du fichier comme argument et renvoie les informations du fichier en tant qu'objet (si le fichier existe) ou une erreur.
Gardez à l'esprit que la méthode STAT peut rencontrer de nombreuses erreurs. Par conséquent, nous devons vérifier s'il s'agit d'un fichier qui n'existe pas d'erreur. Nous pouvons le faire en utilisant le système d'exploitation.ErrNotexist () Erreur.
Considérez l'exemple de code ci-dessous:
package principal
importer (
"les erreurs"
"FMT"
"enregistrer"
"OS"
)
func main ()
_, euh: = os.STAT ("Bonjour.SMS")
Si les erreurs.Est (euh, OS.Errnotexist)
enregistrer.Fatal ("le fichier n'existe pas")
autre
fmt.Println ("Fichier existe")
Une fois que nous exécutons le code ci-dessus, il devrait vérifier si le fichier existe dans le chemin fourni. Nous vérifions si le fichier existe dans le répertoire actuel dans notre exemple.
Le programme ci-dessus doit revenir:
$ go run check_file_exists.aller
le fichier existe
Si nous spécifions un fichier qui n'existe pas, la sortie est comme indiqué:
Fichier ne existe pas
Statut de sortie 1
Si vous souhaitez afficher une autre erreur autre que l'erreur «Fichier n'existe pas», nous pouvons faire:
package principal
importer (
"les erreurs"
"FMT"
"enregistrer"
"OS"
)
func main ()
_, euh: = os.Stat ("Hellotxt")
Si err != nil
enregistrer.Fatal (euh)
Si les erreurs.Est (euh, OS.Errnotexist)
enregistrer.Fatal ("le fichier n'existe pas")
autre
fmt.Println ("Fichier existe")
Conclusion
Ce guide vous a montré comment vérifier si un fichier existe avant de l'utiliser. Cela peut aider à prévenir une erreur fatale dans votre programme.