IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Convertir un string de UTF-8 en ANSI


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 97
    Par défaut Convertir un string de UTF-8 en ANSI
    Bonjour,
    j'ai besoin de convertir des chaine de caractères qui sont en UTF-8 par défaut en code ANSI.
    merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 90
    Par défaut
    Salut,

    Sinon en cherchant un peu, j'ai aussi trouvé cette classe qui devrait faire l'affaire pour une chaine de caractère :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    Imports System.Text
     
    Public Class clsUTF8
    #Region "Decode"
    	Public Function Decode(ByVal strUTFString As String) As String
    		Dim bytString() As Byte = StringToByteArray(strUTFString)
    		Dim chrChars() As Char
    		Dim i
     
    		chrChars = Encoding.UTF8.GetChars(bytString)
     
    		For i = 0 To UBound(chrChars)
    			Decode += chrChars(i)
    		Next
    	End Function
    #End Region
     
    #Region "Encode"
    	Public Function Encode(ByVal strString) As String
    		Dim bytBuffer() As Byte
    		Dim i
     
    		bytBuffer = Encoding.UTF8.GetBytes(strString)
     
    		For i = 0 To UBound(bytBuffer)
    			Encode += Chr(bytBuffer(i))
    		Next
    	End Function
    #End Region
     
    	Private Function StringToByteArray(ByVal strString As String) As Byte()
    		Dim bytBuffer() As Byte
    		Dim i
     
    		ReDim bytBuffer(Len(strString) - 1)
    		For i = 0 To UBound(bytBuffer)
    			bytBuffer(i) = CByte(Asc(Mid(strString, i + 1, 1)))
    		Next
     
    		Return bytBuffer
    	End Function
    End Class
    Ce code n'est pas de moi et il peut être optimisé. La source est disponible ici.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 97
    Par défaut
    ok merci ça marche

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD17] Convertir de l'UTF-16LE en ANSI avec du code WLangage ?
    Par nokwih dans le forum WinDev
    Réponses: 2
    Dernier message: 22/03/2012, 14h08
  2. [UNIX]Convertir un fichier xml UTF-8 en ANSI
    Par splouf dans le forum Unix
    Réponses: 2
    Dernier message: 08/04/2010, 09h32
  3. [PHP 5.2] Convertir un fichier de UTF-8 à ANSI
    Par Invité dans le forum Langage
    Réponses: 2
    Dernier message: 02/09/2009, 11h04
  4. Convertir un string en type property ou object
    Par bencot dans le forum Langage
    Réponses: 2
    Dernier message: 20/11/2004, 20h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo