Golang est largement apprécié des développeurs comme langage de programmation rapide et efficace. Cependant, nous rencontrons parfois des problèmes étranges, tels que la fonction println de Golang produisant des caractères tronqués. Ce problème est généralement dû à un codage de caractères incohérent.
Les chaînes de Golang sont codées en UTF-8 et la fonction println utilise par défaut la sortie standard, qui est la console. Dans la console, le codage de caractères par défaut du système est généralement utilisé. Dans les systèmes Windows, le codage de caractères par défaut est GBK ou GB2312, ce qui n'est pas cohérent avec le codage UTF-8. Par conséquent, lorsque la chaîne est affichée dans la console, des caractères tronqués peuvent apparaître.
La solution à ce problème consiste à définir le codage des caractères de la console sur UTF-8. Dans les systèmes Windows, nous pouvons suivre les étapes suivantes pour configurer :
Dans les systèmes Windows, vous pouvez utiliser les touches de raccourci Win + R pour ouvrir la fenêtre d'exécution, entrez "cmd" et appuyez sur la touche Touche Entrée. Ouvrez une invite de commande.
Dans l'invite de commande, nous pouvons utiliser la commande chcp pour définir le codage des caractères. Entrez chcp 65001 et appuyez sur Entrée pour définir le codage des caractères sur UTF-8. Comme indiqué ci-dessous :
C:\> chcp 65001
Après avoir défini l'encodage des caractères, nous pouvons normalement afficher des chaînes codées en UTF-8 dans la console. Dans Golang, nous pouvons utiliser la fonction Println dans le package fmt pour générer une chaîne. Dans le code, nous devons spécifier le codage de caractères du flux de sortie en UTF-8 pour garantir une sortie correcte. L'exemple de code est le suivant :
package main import ( "fmt" "os" ) func main() { f, err := os.OpenFile("log.txt", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666) if err != nil { fmt.Println(err) return } defer f.Close() fmt.Fprintf(f, "Hello, 世界") }
Après avoir écrit le programme, nous devons utiliser la commande go build pour compiler le programme et exécuter le fichier exécutable généré. Dans la console, entrez la commande suivante pour compiler :
C:\go\src\helloworld> go build
Une fois la compilation terminée, nous pouvons exécuter le programme. Dans la console, entrez la commande suivante pour exécuter le fichier exécutable :
C:\go\src\helloworld> helloworld.exe
Lors de l'exécution du programme, nous constaterons que "Hello, world" a été affiché normalement dans le fichier log.txt.
Résumé
Dans Golang, si nous rencontrons le problème d'une sortie de console tronquée, nous pouvons le résoudre en définissant l'encodage des caractères. Sur les systèmes Windows, vous pouvez utiliser la commande chcp pour définir le codage des caractères sur UTF-8. Dans le programme, nous devons spécifier le codage de caractères du flux de sortie en UTF-8 pour garantir une sortie correcte. De cette façon, nous pouvons facilement résoudre le problème de sortie tronquée par la fonction golang println et améliorer la lisibilité et la maintenabilité du programme.
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!