Maison > développement back-end > Golang > le corps du texte

Comment convertir une rune en chaîne dans Golang ?

Linda Hamilton
Libérer: 2024-11-20 03:50:01
original
659 Les gens l'ont consulté

How to Convert a Rune to a String in Golang?

Conversion d'une rune en chaîne dans Golang

Vous avez un souci concernant la conversion d'une rune en chaîne et son impression, rencontrant des caractères non définis. Examinons le problème et trouvons une solution.

Tout d'abord, dans votre code d'origine, vous avez utilisé Scanner.Scan() pour lire une rune. Cependant, cette méthode est conçue pour gérer les jetons ou les runes avec des valeurs de jeton spéciales, et non la rune lue elle-même.

Pour lire une seule rune, vous devez plutôt utiliser Scanner.Next() :

c := b.Next()
fmt.Println(c, string(c), strconv.QuoteRune(c))
Copier après la connexion

Ce code lira et imprimera désormais correctement la rune sous forme d'entier, sa représentation de caractère et sa version citée.

Alternativement, si vous le souhaitez pour convertir simplement une rune en chaîne, vous pouvez utiliser une conversion de type simple. Rune est un alias pour int32, et la conversion de nombres entiers en chaînes génère leur représentation UTF-8.

r := rune('a')
fmt.Println(r, string(r))
Copier après la connexion

Pour parcourir les runes d'une chaîne, vous pouvez utiliser une boucle de plage for... :

for i, r := range "abc" {
    fmt.Printf("%d - %c (%v)\n", i, r, r)
}
Copier après la connexion

Vous pouvez également convertir une chaîne en tranche de runes en utilisant []rune("abc").

Une autre option consiste à utiliser utf8.DecodeRuneInString().

Dans votre code d'origine utilisant Scanner.Scan(), vous avez configuré par inadvertance le mode du scanner pour gérer les jetons Go, qui incluent des identifiants tels que « a ». L'appel de Scan() a ensuite renvoyé scanner.Ident et imprimé le texte de l'identifiant, ce qui a donné les caractères non définis.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal