Comment puis-je marshaler un objet chaîne Java contenant des trémas en utilisant org.springframework.oxm.jaxb.Jaxb2Marshaller? J'ai une chaîne Java comme Alizée
. Après marshalling avec l'aide Jaxb2Marshaller je reçois Alizée
chaîne xml.org.springframework.oxm.jaxb.Jaxb2Marshaller trémas et caractères spéciaux
2
A
Répondre
4
Cela peut être vrai, mais vous envisagez le XML avec un mauvais jeu de caractères (vous voyez UTF-8 comme ISO-8859-1/ASCII étendu).
Je voudrais revérifier les codages de caractères et que vous visualisez le XML avec l'encodage correct.
Exemple: é est en UTF-8 représenté par deux octets: 0xC3
0xA9
http://www.fileformat.info/info/unicode/char/00e9/index.htm
Ces deux octets, représentée par exemple dans la norme ISO-8859-1 indique:
Si vous créez un fichier texte contenant é et l'enregistrer comme UTF-8
. Rouvrez le fichier mais choisissez le codage ISO-8859-1
et vous verrez le même.
que voulez-vous dire "double-check character encodings"? – Roman
Si JAXB2 génère du code XML avec des caractères UTF-8-enocded, vous devez vous assurer qu'il n'est pas considéré/traité comme des données avec un autre codage. Cela signifie que votre encodage terminal devrait être UTF-8 (si vous imprimez le XML sur votre terminal). Celui qui reçoit/analyse le XML devrait également le traiter comme UTF-8. Je soupçonne que si vous faites de JAXB2 unmarshal le même XML, tout ira bien. – andrel
:) non je ne vois pas mon xml dans le terminal. Je vois xml dans le navigateur avec utf-8. J'ai besoin de masquer chacun des trémas au format xx; avant le rendu/le marshalling. Cela marche! – Roman