Maison > développement back-end > Golang > Comment la fonction « Readln » de Go peut-elle simplifier la lecture de lignes idiomatiques ?

Comment la fonction « Readln » de Go peut-elle simplifier la lecture de lignes idiomatiques ?

DDD
Libérer: 2024-12-05 17:13:17
original
703 Les gens l'ont consulté

How Can Go's `Readln` Function Simplify Idiomatic Line Reading?

Lecture de lignes idiomatiques en Go avec Readln

Lorsque vous travaillez avec des opérations d'entrée/sortie dans Go, il est souvent nécessaire de lire une ligne de texte sous forme de chaîne. Cependant, les fonctions readline de la bibliothèque standard renvoient principalement des tableaux d'octets.

Une solution pratique : la fonction Readln

La fonction Readln fournit un moyen pratique de convertir un tableau d'octets de readline en chaîne. Voici comment cela fonctionne :

<br>import (</p>
<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">"bufio"
"fmt"
"os"
Copier après la connexion

)

// Readln renvoie une seule ligne (sans la terminaison n)
// du lecteur tampon d'entrée.
// Une erreur est renvoyée s'il y a une erreur avec le
// lecteur tamponné.
func Readln(r *bufio.Reader) (string, error) {
var (

isPrefix bool = true
err error = nil
line, ln []byte
Copier après la connexion

)

for isPrefix && err == néant {

line, isPrefix, err = r.ReadLine()
ln = append(ln, line...)
Copier après la connexion

}

retour string(ln), err
}

func main() {
f, err := os.Open("filename.txt")
if err != nil {

fmt.Println("error opening file= ", err)
os.Exit(1)
Copier après la connexion

}

r := bufio.NewReader(f)

pour la ligne, euh := Lireln(r); err == nul ; ligne, err = Readln(r) {

fmt.Println(line)
Copier après la connexion

}

if err != io.EOF {

fmt.Println("error reading file= ", err)
os.Exit(1)
Copier après la connexion

}
}

Exemple d'utilisation

La fonction main() ouvre un fichier, crée un lecteur tamponné à partir de celui-ci, puis utilise la fonction Readln pour parcourir chaque ligne du fichier. La fonction Readln renvoie à la fois la ligne sous forme de chaîne et une valeur d'erreur. Le programme continue de lire les lignes jusqu'à ce que la fin du fichier soit atteinte ou qu'une erreur se produise.

Cette approche simplifie la lecture des lignes dans Go, offrant une méthode plus idiomatique et conviviale pour obtenir des chaînes à partir de l'entrée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Recommandations populaires
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal