Suche…


Syntax

  • file, err: = os.Open ( name ) // Öffnet eine Datei im schreibgeschützten Modus. Ein Nicht-Null-Fehler wird zurückgegeben, wenn die Datei nicht geöffnet werden konnte.
  • file, err: = os.Create ( name ) // Erzeugt oder öffnet eine Datei, wenn sie im schreibgeschützten Modus bereits vorhanden ist. Die Datei wird überschrieben, wenn sie bereits existiert. Ein Nicht-Null-Fehler wird zurückgegeben, wenn die Datei nicht geöffnet werden konnte.
  • file, err: = os.OpenFile ( Name , Flags , Perm ) // Öffnet eine Datei in dem durch die Flags angegebenen Modus. Ein Nicht-Null-Fehler wird zurückgegeben, wenn die Datei nicht geöffnet werden konnte.
  • data, err: = ioutil.ReadFile ( name ) // Liest die gesamte Datei und gibt sie zurück. Ein Nicht-Null-Fehler wird zurückgegeben, wenn die gesamte Datei nicht gelesen werden konnte.
  • err: = ioutil.WriteFile ( Name , Daten , Perm ) // Erzeugt oder überschreibt eine Datei mit den bereitgestellten Daten und den UNIX-Berechtigungsbits. Ein Nicht-Null-Fehler wird zurückgegeben, wenn nicht in die Datei geschrieben werden konnte.
  • err: = os.Remove ( name ) // Löscht eine Datei. Ein Nicht-Null-Fehler wird zurückgegeben, wenn die Datei nicht gelöscht werden konnte.
  • err: = os.RemoveAll ( name ) // Löscht eine Datei oder eine ganze Verzeichnishierarchie. Ein Nicht-Null-Fehler wird zurückgegeben, wenn die Datei oder das Verzeichnis nicht gelöscht werden konnte.
  • err: = os.Rename ( oldName , newName ) // Benennt eine Datei um oder verschiebt sie (kann über mehrere Verzeichnisse hinweg sein). Ein Nicht-Null-Fehler wird zurückgegeben, wenn die Datei nicht verschoben werden konnte.

Parameter

Parameter Einzelheiten
Name Ein Dateiname oder ein Pfad des Typs string. Zum Beispiel: "hello.txt" .
Irr Ein error Wenn nicht gleich nil , handelt es sich um einen Fehler, der beim Aufruf der Funktion aufgetreten ist.
Datei Ein *os.File vom Typ *os.File von den mit der os Paketdatei verbundenen Funktionen zurückgegeben wird. Es implementiert einen io.ReadWriter , das heißt, Sie können Read(data) und Write(data) darauf aufrufen. Beachten Sie, dass diese Funktionen möglicherweise nicht in Abhängigkeit von den offenen Flags der Datei aufgerufen werden können.
Daten Ein Byte-Byte ( []byte ), das die Rohdaten einer Datei darstellt.
Dauerwelle Die UNIX-Berechtigungsbits, die zum Öffnen einer Datei mit dem Typ os.FileMode . Für die Verwendung von Berechtigungsbits stehen mehrere Konstanten zur Verfügung.
Flagge Dateiöffnungs-Flags, die die Methoden bestimmen, die für den File-Handler des Typs int aufgerufen werden können. Für die Verwendung von Flags stehen mehrere Konstanten zur Verfügung. Dies sind: os.O_RDONLY , os.O_WRONLY , os.O_RDWR , os.O_APPEND , os.O_CREATE , os.O_EXCL , os.O_SYNC und os.O_TRUNC .

Lesen und Schreiben in eine Datei mit ioutil

Ein einfaches Programm, das "Hallo, Welt!" Schreibt. test.txt liest die Daten zurück und druckt sie aus. Veranschaulicht einfache Datei-E / A-Vorgänge.

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    hello := []byte("Hello, world!")

    // Write `Hello, world!` to test.txt that can read/written by user and read by others 
    err := ioutil.WriteFile("test.txt", hello, 0644)
    if err != nil {
        panic(err)
    }

    // Read test.txt
    data, err := ioutil.ReadFile("test.txt")
    if err != nil {
        panic(err)
    }

    // Should output: `The file contains: Hello, world!`
    fmt.Println("The file contains: " + string(data))
}

Auflisten aller Dateien und Ordner im aktuellen Verzeichnis

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    files, err := ioutil.ReadDir(".")
    if err != nil {
        panic(err)
    }

    fmt.Println("Files and folders in the current directory:")

    for _, fileInfo := range files {
        fmt.Println(fileInfo.Name())
    }
}

Alle Ordner im aktuellen Verzeichnis auflisten

package main

import (
    "fmt"
    "io/ioutil"
)

func main() {
    files, err := ioutil.ReadDir(".")
    if err != nil {
        panic(err)
    }

    fmt.Println("Folders in the current directory:")

    for _, fileInfo := range files {
        if fileInfo.IsDir() {
            fmt.Println(fileInfo.Name())
        }
    }
}


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow