Go
Bestand I / O
Zoeken…
Syntaxis
- file, err: = os.Open ( name ) // Opent een bestand in alleen-lezen modus. Er wordt een nulfout geretourneerd als het bestand niet kon worden geopend.
- file, err: = os.Create ( name ) // Maakt of opent een bestand als het al bestaat in de modus Alleen-schrijven. Het bestand wordt overschreven als het al bestaat. Er wordt een nulfout geretourneerd als het bestand niet kon worden geopend.
- file, err: = os.OpenFile ( naam , vlaggen , perm ) // Opent een bestand in de modus die wordt aangegeven door de vlaggen. Er wordt een nulfout geretourneerd als het bestand niet kon worden geopend.
- data, err: = ioutil.ReadFile ( name ) // Leest het hele bestand en retourneert het. Er wordt een nulfout geretourneerd als het hele bestand niet kon worden gelezen.
- err: = ioutil.WriteFile ( naam , gegevens , perm ) // Maakt of overschrijft een bestand met de verstrekte gegevens en UNIX-machtigingsbits. Er wordt een nulfout geretourneerd als er niet naar het bestand kon worden geschreven.
- err: = os.Remove ( name ) // Wist een bestand. Er wordt een nulfout geretourneerd als het bestand niet kon worden verwijderd.
- err: = os.RemoveAll ( name ) // Wist een bestand of hele directoryhiërarchie. Er wordt een niet-nulfout geretourneerd als het bestand of de map niet kon worden verwijderd.
- err: = os.Rename ( oldName , newName ) // Hernoemt of verplaatst een bestand (kan zich tussen mappen bevinden). Er wordt een nulfout geretourneerd als het bestand niet kon worden verplaatst.
parameters
Parameter | Details |
---|---|
naam | Een bestandsnaam of pad van het type string. Bijvoorbeeld: "hello.txt" . |
dwalen | Een error Als dit niet nil , vertegenwoordigt dit een fout die is opgetreden toen de functie werd aangeroepen. |
het dossier | Een bestandshandler van het type *os.File geretourneerd door de aan het os pakket gerelateerde functies. Het implementeert een io.ReadWriter , wat betekent dat u erop Read(data) en Write(data) kunt aanroepen. Merk op dat deze functies mogelijk niet kunnen worden aangeroepen, afhankelijk van de open vlaggen van het bestand. |
gegevens | Een stuk bytes ( []byte ) die de onbewerkte gegevens van een bestand vertegenwoordigen. |
permanent | De UNIX-machtigingsbits die worden gebruikt om een bestand met het type os.FileMode . Er zijn verschillende constanten beschikbaar om te helpen met het gebruik van machtigingsbits. |
vlag | Open vlaggen van bestanden die bepalen welke methoden kunnen worden aangeroepen in de bestandshandler van het type int . Er zijn verschillende constanten beschikbaar om te helpen bij het gebruik van vlaggen. Ze zijn: os.O_RDONLY , os.O_WRONLY , os.O_RDWR , os.O_APPEND , os.O_CREATE , os.O_EXCL , os.O_SYNC en os.O_TRUNC . |
Een bestand lezen en schrijven met ioutil
Een eenvoudig programma dat schrijft: "Hallo wereld!" naar test.txt
, leest de gegevens terug en drukt deze af. Toont eenvoudige bestands-I / O-bewerkingen.
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))
}
Alle bestanden en mappen in de huidige map weergeven
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 mappen in de huidige map weergeven
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
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow