OVH Cloud OVH Cloud

Utiliser System.Text.Encoding pour Unicode->

2 réponses
Avatar
oLiVieR CheNeSoN
Bonjour ,


J aimerai savoir comment utiliser System.Text.Encoding pour convertir
Unicode vers UTF8 et vice versa.


Est ce que quelqu un a deja fait ca ?


Merci
Olivier

2 réponses

Avatar
Fred
Dans son message eaxh67%
oLiVieR CheNeSoN nous dit :

Bonjour ,


J aimerai savoir comment utiliser System.Text.Encoding pour convertir
Unicode vers UTF8 et vice versa.


Est ce que quelqu un a deja fait ca ?



Oui.
Tes chaînes de caractères sont toujours en Unicode. Par contre il
n'existe pas de chaînes en UTF-8.
Admettons que tu lises un flux d'octets (fichier, web) dont tu sais
qu'il correspond à un encodage UTF-8 d'une chaîne, tu peux récupérer la
chaîne encodée avec l'instruction suivante :

MaChaîne = System.Text.Encoding.UTF8.GetString(TabBytes())

Et inversement :

TabBytes = System.Text.Encoding.UTF8.GetBytes(MaChaîne)

--
Fred
http://www.cerbermail.com/?3kA6ftaCvT
Avatar
oLiVieR CheNeSoN
Merci pour ta reponse


Voici ce que j ai fait,

c est une dialog form application avec des richtextbox et un button

Dim unicodeString As String = Me.RichTextBoxUnicode.Text

' Create two different encodings.

Dim dstEncoding As Encoding = Encoding.UTF8

Dim srcEncoding As Encoding = Encoding.Unicode

' Convert the string into a byte[].

Dim srcBytes As Byte() = dstEncoding.GetBytes(unicodeString)

' Perform the conversion from one encoding to the other.

Dim dstBytes As Byte() = Encoding.Convert(srcEncoding, dstEncoding,
srcBytes)

Me.RichTextBoxUTF8.Text = dstEncoding.GetString(dstBytes)



je recupere la meme chaine a la fin.



Merci pour ton aide

Olivier







"Fred" wrote in message
news:
Dans son message eaxh67%
oLiVieR CheNeSoN nous dit :

> Bonjour ,
>
>
> J aimerai savoir comment utiliser System.Text.Encoding pour convertir
> Unicode vers UTF8 et vice versa.
>
>
> Est ce que quelqu un a deja fait ca ?

Oui.
Tes chaînes de caractères sont toujours en Unicode. Par contre il
n'existe pas de chaînes en UTF-8.
Admettons que tu lises un flux d'octets (fichier, web) dont tu sais
qu'il correspond à un encodage UTF-8 d'une chaîne, tu peux récupérer la
chaîne encodée avec l'instruction suivante :

MaChaîne = System.Text.Encoding.UTF8.GetString(TabBytes())

Et inversement :

TabBytes = System.Text.Encoding.UTF8.GetBytes(MaChaîne)

--
Fred
http://www.cerbermail.com/?3kA6ftaCvT