- Autor
- Nome
- Nelson Silva
- Social
Introdução
A leitura de ficheiros é uma das operações mais comuns em programação. Seja para configurações, dados persistentes ou para processamento, ler ficheiros é fundamental. Go, com sua abordagem prática e eficiente, fornece várias bibliotecas e funções para facilitar essa tarefa.
Ler Todo o Ficheiro
Uma das maneiras mais simples de ler um ficheiro em Go é usar a função ioutil.ReadFile
.
import (
"fmt"
"io/ioutil"
)
func main() {
conteudo, erro := ioutil.ReadFile("exemplo.txt")
if erro != nil {
fmt.Println("Erro:", erro)
return
}
fmt.Println(string(conteudo))
}
Leitura com o Pacote "os"
Para ter um controle mais granular sobre a leitura, podemos usar o pacote os
:
import (
"fmt"
"os"
"bufio"
)
func main() {
ficheiro, erro := os.Open("exemplo.txt")
if erro != nil {
fmt.Println("Erro:", erro)
return
}
defer ficheiro.Close()
scanner := bufio.NewScanner(ficheiro)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
if erro := scanner.Err(); erro != nil {
fmt.Println("Erro de leitura:", erro)
}
}
Ler Linha por Linha
Para ficheiros grandes, ler linha por linha pode ser mais eficiente:
import (
"fmt"
"bufio"
"os"
)
func lerFicheiroLinhaALinha(nomeFicheiro string) error {
ficheiro, erro := os.Open(nomeFicheiro)
if erro != nil {
return erro
}
defer ficheiro.Close()
scanner := bufio.NewScanner(ficheiro)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
return scanner.Err()
}
Conclusão
Ler ficheiros em Go é uma tarefa intuitiva graças à abordagem modular da linguagem e às bibliotecas fornecidas. Independentemente da complexidade da sua necessidade, Go tem as ferramentas para ajudá-lo a trabalhar com ficheiros de forma eficaz.