Maison >développement back-end >Golang >Comment puis-je désorganiser le XML codé ISO-8859-1 dans Go ?

Comment puis-je désorganiser le XML codé ISO-8859-1 dans Go ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-12 19:18:11928parcourir

How Can I Unmarshal ISO-8859-1 Encoded XML in Go?

Démarshalisation du XML codé en ISO-8859-1 à l'aide de Go

La fonction Unmarshal populaire du package XML de Go peut être difficile si votre entrée XML n'est pas codé en UTF-8. Pour gérer de telles entrées, Go nécessite un CharsetReader.

Où trouver un CharsetReader ?

Dans les versions récentes de Go (à partir de 2015), le site golang.org/x Le package /net/html/charset fournit les fonctionnalités nécessaires. La fonction NewReaderLabel de ce package peut effectuer la conversion nécessaire.

Exemple de code

L'extrait de code suivant montre comment utiliser NewReaderLabel pour désorganiser correctement une entrée XML codée en ISO -8859-1 :

import (
    "encoding/xml"
    "golang.org/x/net/html/charset"
    "bytes"
)

var theXml = [...]byte{byte(0x3C), byte(0x3F), byte(0x78), byte(0x6D), /* ... */}

reader := bytes.NewReader(theXml)
decoder := xml.NewDecoder(reader)
decoder.CharsetReader = charset.NewReaderLabel
err := decoder.Decode(&parsed)

En incorporant ce code, Go peut réussir désorganiser les entrées XML codées en ISO-8859-1.

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!

Déclaration:
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