Szukaj…


Składnia

  • file, err: = os.Open ( name ) // Otwiera plik w trybie tylko do odczytu. Błąd inny niż zero jest zwracany, jeśli nie można otworzyć pliku.
  • file, err: = os.Create ( name ) // Tworzy lub otwiera plik, jeśli już istnieje w trybie tylko do zapisu. Plik zostanie zastąpiony, jeśli już istnieje. Błąd inny niż zero jest zwracany, jeśli nie można otworzyć pliku.
  • file, err: = os.OpenFile ( nazwa , flagi , perm ) // Otwiera plik w trybie określonym przez flagi. Błąd inny niż zero jest zwracany, jeśli nie można otworzyć pliku.
  • data, err: = ioutil.ReadFile ( name ) // Czyta cały plik i zwraca go. Błąd inny niż zero jest zwracany, jeśli nie można odczytać całego pliku.
  • err: = ioutil.WriteFile ( nazwa , dane , perm ) // Tworzy lub zastępuje plik dostarczonymi danymi i bitami uprawnień UNIX. Błąd inny niż zero jest zwracany, jeśli nie udało się zapisać pliku.
  • err: = os.Remove ( name ) // Usuwa plik. Błąd inny niż zero jest zwracany, jeśli nie można usunąć pliku.
  • err: = os.RemoveAll ( name ) // Usuwa hierarchię plików lub katalogów. Błąd inny niż zero jest zwracany, jeśli nie można usunąć pliku lub katalogu.
  • err: = os.Rename ( oldName , newName ) // Zmienia nazwę lub przenosi plik (może być między katalogami). Błąd inny niż zero jest zwracany, jeśli nie można przenieść pliku.

Parametry

Parametr Detale
Nazwa Nazwa pliku lub ścieżka typu string. Na przykład: "hello.txt" .
błądzić error . Jeśli nie nil , oznacza to błąd, który wystąpił podczas wywołania funkcji.
plik Program obsługi plików typu *os.File zwrócony przez funkcje związane z plikiem pakietu os . Implementuje io.ReadWriter , co oznacza, że możesz na nim wywoływać Read(data) i Write(data) . Należy pamiętać, że te funkcje mogą nie być wywoływane w zależności od otwartych flag pliku.
dane Kawałek bajtów ( []byte ) reprezentujący surowe dane pliku.
trwała ondulacja Bity uprawnień UNIX używane do otwierania pliku typu os.FileMode . Dostępnych jest kilka stałych pomocnych przy użyciu bitów uprawnień.
flaga Flagi otwartych plików, które określają metody, które można wywołać w procedurze obsługi plików typu int . Dostępnych jest kilka stałych pomocnych w korzystaniu z flag. Są to: os.O_RDONLY , os.O_WRONLY , os.O_RDWR , os.O_APPEND , os.O_CREATE , os.O_EXCL , os.O_SYNC i os.O_TRUNC .

Odczytywanie i zapisywanie do pliku za pomocą ioutil

Prosty program, który pisze „Witaj, świecie!” do test.txt , odczytuje dane i drukuje je. Demonstruje proste operacje we / wy pliku.

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))
}

Lista wszystkich plików i folderów w bieżącym katalogu

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())
    }
}

Wyświetlanie wszystkich folderów w bieżącym katalogu

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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow