golang

Paquet de scanner de Golang

Paquet de scanner de Golang

Dans cette leçon sur le package Scanner dans Golang, nous étudierons divers exemples sur la façon d'utiliser les scanners de plusieurs manières dans le langage de programmation Go. Nous allons commencer maintenant.

Commencer par Go

Juste pour vous assurer que l'environnement est configuré de manière cohérente, voici la structure de répertoires que j'ai créée pour mon programme Hello World :

Voici le programme que nous avons créé :

paquet principal
importer "fmt"
fonction principale()
fmt.Printf("Bonjour, monde.\n")

Nous pouvons exécuter le programme ci-dessus avec la commande suivante :

va courir bonjour.va

Une fois que nous avons exécuté cette commande, voici le résultat que vous verrez :

Maintenant ça a l'air bien. Passons à notre ordre du jour principal.

Pack Scanner et Bufio au Golang

Dans cet article, nous allons passer en revue les packages bufio et scanner.

Nous allons commencer par un exemple très simple pour diviser des chaînes en plusieurs mots. Prenons l'exemple suivant :

paquet principal
importer (
"bufio"
"fmt"
"chaînes"
)
fonction principale()
inputStr := "golang shubham linux"
scanner := bufio.NouveauScanner(chaînes.NouveauLecteur(inputStr))
scanner.Diviser (bufio.ScanMots)
pour scanner.Analyse()
fmt.Println(scanner.Texte())

La sortie de ce programme sera :

golang
shubham
linux

Ici, Scanner a utilisé la sortie d'entrée tamponnée en lisant l'entrée fournie en tant que flux.

Lire un fichier

Maintenant, essayons de lire un fichier dans Go, en utilisant bufio pour lire un fichier ligne par ligne. Pour ce faire, nous créons d'abord un exemple de fichier dans le même répertoire que notre programme Go. Voici notre fichier :

Ensuite, nous écrivons notre programme pour lire ce fichier ligne par ligne :

paquet principal
importer (
"bufio"
"fmt"
"Journal"
"os"
)
fonction principale()
fileToRead, erreur := os.Ouvert("./Bonjour.SMS")
si erreur != nul
Journal.Erreur fatale)

defer fileToRead.Fermer()
scanner := bufio.NouveauScanner(fichierÀLire)
pour scanner.Analyse()
fmt.Println(scanner.Texte())

si erreur := scanner.Se tromper(); Erreur != nul
Journal.Erreur fatale)

Une fois que nous avons exécuté ce programme, voici la sortie que nous obtiendrons

Prise d'entrée utilisateur avec bufio

C'est l'opération la plus utile à effectuer lorsqu'un utilisateur débute avec la langue Golang.

Nous pouvons prendre une entrée utilisateur comme :

paquet principal
importer (
"bufio"
"fmt"
"os"
)
fonction principale()
lecteur := bufio.NouveauLecteur(os.Stdin)
fmt.Imprimer("Saisir le texte : ")
texte, _ := lecteur.ReadString('\n')
fmt.Imprimerln(texte)

Exécutons ce programme maintenant :

Juste pour noter, il existe un autre moyen de prendre des entrées si vous n'acceptez PAS d'espace blanc:

paquet principal
importer "fmt"
chaîne d'entrée var
fonction principale()
fmt.Imprimer("Entrez votre nom=")
fmt.Scanf("%s",&entrée)
fmt.Println("Bonjour "+entrée)

Exécutons ce programme maintenant :

Conclusion

Pour étudier, le package Scanner et Bufio en Go est très utile et il n'est jamais possible de s'en passer. Lisez plus d'exemples pour le package et essayez autant que possible par vous-même.

Comment utiliser AutoKey pour automatiser les jeux Linux
AutoKey est un utilitaire d'automatisation de bureau pour Linux et X11, programmé en Python 3, GTK et Qt. En utilisant ses fonctionnalités de script e...
Comment afficher le compteur FPS dans les jeux Linux
Les jeux Linux ont reçu une impulsion majeure lorsque Valve a annoncé la prise en charge de Linux pour le client Steam et leurs jeux en 2012. Depuis l...
Comment télécharger et jouer à Civilization VI de Sid Meier sur Linux
Présentation du jeu Civilization 6 est une version moderne du concept classique introduit dans la série de jeux Age of Empires. L'idée était assez sim...