Open Golang

Open Golang

Dovrai leggere o scrivere file nei tuoi programmi quasi sempre. Questo è un requisito di base che ogni programmatore dovrebbe avere sotto le loro cinture. Questo articolo coprirà come aprire e leggere i file in GO utilizzando il pacchetto del sistema operativo.

Pacchetto OS Golang

Per leggere e scrivere i file in GO, dobbiamo importare il pacchetto del sistema operativo. È possibile importarla utilizzando la parola chiave di importazione come mostrato di seguito:

Importa "sistema operativo"

Una volta importato, è possibile eseguire operazioni di file senza errori.

sistema operativo.Aprire()

Prima di utilizzare il metodo Open () per aprire e leggere il file, preparare il nostro ambiente. Crea una directory di lavoro:

mkdir read_file

Naviga nella directory e crea un file di testo:

CD read_file
Tocca Hello.TXT

Una volta che abbiamo un file di testo da leggere, aprilo con il tuo editor di testo preferito e aggiungi alcuni contenuti:

$ vim ciao.TXT
"Ciao dal ciao.file txt "

Chiudi e salva il file.

Per aprire e leggere il file in GO, creare un file GO e immettere il codice:

File, err: = OS.Aperto ("Ciao.TXT")
Se err != nil
tronco d'albero.Fatale (err)

Una volta aperto il file, possiamo leggere i dati del file in una fetta di byte. Possiamo farlo usando il metodo di lettura, che prende la dimensione del byte come argomento. Un esempio è come mostrato:

file_data: = make ([] byte, 50)
conta, err: = file.Leggi (file_data)
Se err != nil
tronco d'albero.Fatale (err)

fmt.Printf ("Leggi %d byte: %q \ n", count, file_data [: count])

In questa sezione, utilizziamo Crea una fetta di byte. Quindi utilizziamo il metodo read () per leggere i dati del file.

Controviamo gli errori e quindi determiniamo il numero di byte che leggiamo dal file. Utilizzando il metodo printf, stampiamo il contenuto del file.

L'output risultante:

Leggi 29 byte: "Ciao dal ciao.file txt"

Come puoi vedere, leggiamo precisamente 29 byte dal file.

Se proviamo ad aprire un file che non esiste, la funzione restituisce un errore come mostrato:

File, err: = OS.Apri ("Informazioni.TXT")

Output di errori:

informazioni aperte.txt: il sistema non può trovare il file specificato.
Stato di uscita 1

sistema operativo.Apri il file()

Il metodo OpenFile () consente di aprire un file con il flag specificato. Tali bandiere includono:

  1. O_rdonly- Modalità di sola lettura.
  2. O_wronly. Apre il file in modalità scrittura.
  3. O_rdwr-Apri il file in modalità read-write.
  4. O_append-Aggiunge i dati al file durante la scrittura.
  5. O_trunc-Troncare il file quando viene aperto, ove applicabile.
  6. O_sync - Apri il file per I/O sincrono.
  7. O_create - Crea un file se non esiste.

È possibile specificare qualsiasi flag durante l'apertura di un file in base ai requisiti.

Se si chiama il metodo OpenFile () con il flag O_Create, se il file non esiste, viene creato con l'autorizzazione della modalità prima di Umask.

Esempio:

File, err: = OS.Openfile ("Nuovo.txt ", sistema operativo.O_rdwr | OS.O_Create, 0777)
Se err != nil
tronco d'albero.Fatale (err)

se err: = file.Vicino(); err != nil
tronco d'albero.Fatale (err)

Nell'esempio sopra, utilizziamo il metodo OpenFile () per aprire un file in modalità di lettura/scrittura come specificato dal sistema operativo.Flag rdwr (). Specifichiamo anche il sistema operativo.O_Crea flag per creare il file se non esiste.

Si noti che specifichiamo anche l'autorizzazione di 0755.

Se eseguiamo il codice sopra, dovrebbe creare un file chiamato nuovo.TXT.

$ ls -la
-RW-R-R-- 1 CSALEM 197121 0 gennaio 24 15:00 Nuovo.TXT

Conclusione

Questa guida ci ha insegnato come aprire e leggere i file in GO utilizzando i metodi Open e OpenFile (). Esplora la documentazione per saperne di più.

Grazie per aver letto!