Maison > développement back-end > Golang > Comment puis-je convertir les encodages de texte en UTF-8 à l'aide du package « encoding » de Go ?

Comment puis-je convertir les encodages de texte en UTF-8 à l'aide du package « encoding » de Go ?

DDD
Libérer: 2025-01-03 04:34:38
original
727 Les gens l'ont consulté

How Can I Convert Text Encodings to UTF-8 Using Go's `encoding` Package?

Convertir les encodages en UTF-8 avec le package d'encodage de Go

Le package d'encodage de Go prend en charge la conversion de texte d'un encodage à un autre, y compris UTF-8. Voici comment utiliser ce package pour la conversion de texte :

Pour convertir un encodage en UTF-8, vous pouvez suivre les étapes suivantes :

  1. Importer le package d'encodage :

    import (
     "encoding/json"
     "fmt"
     "io/ioutil"
     "strings"
    )
    Copier après la connexion
  2. Déclarez un bytes.Buffer pour stocker l'encodé text.
  3. Créez un encodeur pour l'encodage de sortie souhaité (UTF-8 dans ce cas) et connectez-le au tampon.
  4. Encodez le texte source et écrivez-le dans le tampon.
  5. Fermez l'encodeur pour vider toutes les données restantes.

Voici un exemple qui convertit un UTF-8 chaîne vers ShiftJIS et retour :

// Convert String from UTF-8 to another encoding
func convertEncoding(s string, encoding string) string {
    encoder := json.NewEncoder(new(bytes.Buffer))
    if err := encoder.Encode(s); err != nil {
        fmt.Println("Encoding failed:", err)
        return ""
    }
    encodedStr, err := ioutil.ReadAll(encoder.Buffered())
    if err != nil {
        fmt.Println("Reading encoded string failed:", err)
        return ""
    }
    return strings.TrimSpace(string(encodedStr))
}

func main() {
    original := "日本語"
    encoded := convertEncoding(original, "shift_jis")
    fmt.Println("Encoded:", encoded)
    decoded := convertEncoding(encoded, "utf-8")
    fmt.Println("Decoded:", decoded)
}
Copier après la connexion

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