Heim >Backend-Entwicklung >Golang >Wie überprüfe ich das Vorhandensein einer Datei oder eines Verzeichnisses in Go?

Wie überprüfe ich das Vorhandensein einer Datei oder eines Verzeichnisses in Go?

Susan Sarandon
Susan SarandonOriginal
2024-12-05 18:33:111054Durchsuche

How Do I Check for File or Directory Existence in Go?

Überprüfen der Existenz einer Datei oder eines Verzeichnisses in Go

Die Überprüfung der Existenz einer Datei oder eines Verzeichnisses ist eine häufige Aufgabe in der Programmierung. In Go gibt es mehrere Möglichkeiten, dies zu erreichen.

Eine Methode ist die Verwendung der Funktion os.Stat(). Diese Funktion gibt ein FileInfo-Objekt zurück, das Informationen über die Datei oder das Verzeichnis enthält, einschließlich der Frage, ob sie vorhanden ist. Der folgende Code zeigt, wie Sie mit os.Stat() die Existenz einer Datei oder eines Verzeichnisses prüfen:

import "os"

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

Eine andere Methode besteht darin, die Funktion Open() mit dem Flag O_RDONLY zu verwenden. Dieses Flag öffnet die Datei oder das Verzeichnis im schreibgeschützten Modus und gibt ein os.File-Objekt zurück. Wenn die Datei oder das Verzeichnis nicht existiert, gibt die Funktion einen Fehler zurück. Der folgende Code zeigt, wie Sie Open() verwenden, um die Existenz einer Datei oder eines Verzeichnisses zu überprüfen:

import "os"

func exists(path string) bool {
    f, err := os.OpenFile(path, os.O_RDONLY, 0666)
    if err != nil {
        if err == os.ErrNotExist {
            return false
        }
        return false
    }
    f.Close()
    return true
}

Das obige ist der detaillierte Inhalt vonWie überprüfe ich das Vorhandensein einer Datei oder eines Verzeichnisses in Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn