Convertir une chaine de caracatères en hexadécimal

Signaler
Messages postés
2
Date d'inscription
lundi 24 mars 2003
Statut
Membre
Dernière intervention
4 mars 2004
-
Messages postés
59
Date d'inscription
lundi 31 décembre 2001
Statut
Membre
Dernière intervention
11 mai 2006
-
salut all !

voilà je voulais savoir s'il existe une fonction pour convertir une chaine de caractètes provenat du port série RS232 récupéré par la méthode Input de MsComm (buffer = MSComm.Input) en code hexadecimal.
La fonction Int.Parse(maString) ne me retourne rien.
Quand a la fonction Convert.ToInt(maString,16) j'ai une erreur (manque un paramètre)

maString = MSComm.Input.ToString();

//convertir en hexa

la chaine peu ressembler a ça par exemple:
maString = "ÿÿ\0\0"\b”";

Peut on convertir le caractère 'ÿ' de la chaine en code hexadecimal ?
pour info VB le fait très bien par ce code en me renvoyant le code hexa du caractère 'ÿ':
buff = "ÿÿ\0\0"\b”"
textbox1.text = Hex(Asc(Mid(buff, 1, 2)))

merci de votre réponse
Vinc

1 réponse

Messages postés
59
Date d'inscription
lundi 31 décembre 2001
Statut
Membre
Dernière intervention
11 mai 2006

il faut faire un peu de logique et partrtir sur un conversion de base 10 vers base 16

je t'eqplique le principe par exemple pour convertir 231 en base 16 tu fait :
213 / 16 13 reste 5> première partie : 5
13 / 16 0 reste 13> deuxième partie (13 en dec donc D en hex)

Resultat : D5
En fait une boucle while suffit, tant que le resultat n'est pas à 0, tu le redivise par 16, en ajoutant le reste à chaque fois. A la fin tu obtient le reésultat

Funcky 8-)

=============================

On dit que seulement dix personnes au monde comprenaient Einstein. Personne ne me comprend. Suis-je un génie ?