Sök…


Syntax

  • fil, fel: = os.Öppna ( namn ) // Öppnar en fil i skrivskyddad läge. Ett fel som inte är noll returneras om filen inte kunde öppnas.
  • fil, err: = os.Create ( name ) // Skapar eller öppnar en fil om den redan finns i skrivskyddsläge. Filen skrivs över till om den redan finns. Ett fel som inte är noll returneras om filen inte kunde öppnas.
  • file, err: = os.OpenFile ( namn , flaggor , perm ) // Öppnar en fil i läget som anges av flaggorna. Ett fel som inte är noll returneras om filen inte kunde öppnas.
  • data, err: = ioutil.ReadFile ( name ) // Läser hela filen och returnerar den. Ett fel som inte är noll returneras om hela filen inte kunde läsas.
  • err: = ioutil.WriteFile ( namn , data , perm ) // Skapar eller skriver över en fil med tillhandahållna data och UNIX-tillståndsbitar. Ett fel som inte är noll returneras om filen inte kan skrivas till.
  • err: = os. Ta bort ( namn ) // Tar bort en fil. Ett fel som inte är noll returneras om filen inte kunde raderas.
  • err: = os.RemoveAll ( namn ) // Tar bort en fil eller en hel kataloghierarki. Ett fel som inte är noll returneras om filen eller katalogen inte kunde raderas.
  • err: = os.Rename ( oldName , newName ) // Byt namn på eller flyttar en fil (kan finnas över kataloger). Ett fel som inte är noll returneras om filen inte kunde flyttas.

parametrar

Parameter detaljer
namn Ett filnamn eller sökväg av typsträng. Till exempel: "hello.txt" .
fela Ett error . Om inte nil representerar det ett fel som inträffade när funktionen kallades.
fil En filhanterare av typen *os.File returneras av os paketets filrelaterade funktioner. Den implementerar en io.ReadWriter , vilket innebär att du kan ringa Read(data) och Write(data) på den. Observera att dessa funktioner kanske inte kan ringas beroende på filens öppna flaggor.
data En bit byte ( []byte ) som representerar rådata för en fil.
perm UNIX-tillståndsbitarna som används för att öppna en fil med typen os.FileMode . Flera konstanter är tillgängliga för att hjälpa till med användningen av tillståndsbitar.
flagga Filera öppna flaggor som bestämmer de metoder som kan kallas på filhanteraren av typen int . Flera konstanter finns tillgängliga för att hjälpa till med användning av flaggor. De är: os.O_RDONLY , os.O_WRONLY , os.O_RDWR , os.O_APPEND , os.O_CREATE , os.O_EXCL , os.O_SYNC och os.O_TRUNC .

Läsa och skriva till en fil med ioutil

Ett enkelt program som skriver "Hej, världen!" att test.txt , läser tillbaka data och skriver ut dem. Visar enkla fil I / O-operationer.

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 alla filer och mappar i den aktuella katalogen

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

Listar alla mappar i den aktuella katalogen

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
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow