space_walker
Messages postés84Date d'inscriptionmardi 3 février 2004StatutMembreDernière intervention22 juillet 2008
-
28 juil. 2007 à 14:41
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 2014
-
28 juil. 2007 à 23:01
bonjour,
je souhaite convertir un integer en hexa, mais avec une representation sur 32 bits dans tous les cas ..
exemples :
int = 15 ==> 0000000F
int = 16845 ==> 000041CD
int = 2784592 ==> 002A7D50
j'arrive pas à me depatouiller avec la fonction Hex(..) .. ca me tronque les 0 non significatifs ..
hvb
Messages postés939Date d'inscriptionvendredi 25 octobre 2002StatutMembreDernière intervention27 janvier 20093 28 juil. 2007 à 22:49
mmmm moi j'aurais fait plus simplement :
toto=Convert.ToString(i, 16).PadLeft(8,
"0")
où i est la valeur entiere. C'est la même chose mais je ne comprend pas à quoi sert la variable "titi" au dessus
casy : Content que tu sois de mon avis, je me bas souvent pour cette cause depuis que je la soutien. ^^
Je prevois d'ailleurs, (je te le reproposerais), de créer une source commune qui referencerait toutes les équivalences les plus demandée.
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 28 juil. 2007 à 17:52
Exact, j'avais pas fait gaffe que c'était en .Net
Tellement d'accord avec toi que de plus en plus qu'en je vois du code VB6 (comme ici), je n'imagine plus (et ne vérifie pas non plus) que ça peut etre dans la rubrique .Net
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 28 juil. 2007 à 20:36
En pur .Net, déjà il n'est pas évident de faire une conversion en Hexa en se passant des service de l'assembly Microsoft.VisualBasic (la fameuse bibliothèque qui pour moi ne devrait jamais etre utilisée en .Net)
Mais il existe quand même certainement plusieurs possibilités, l'une d'elles pourrait etre celle-ci :
toto = titi.ToString("X").PadLeft(8, "0"c)
ToString("X") pour convertir en Hexa,
PadLeft pour faire le remplissage à gauche.
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 28 juil. 2007 à 23:01
Pour la source d'équivalence, pourquoi pas, mais ça va peut-etre pas etre si évident car pour moi il n'y a pas forcément équivalence aussi simplement, à part peut-etre pour les fonctions de chaines comme Left, Mid, Split, ....
Sinon plus qu'une équivalence de fonctions, c'est plutot une organisation du code qui est à repenser. Ce n'est donc pas une fonction VB6 dont il faut trouver l'équivalence, mais quelques fois c'est les 10 lignes + les 10 lignes après qu'il faut réencoder, quand ça ne se reporte pas sur plusieurs niveau d'appel de fonctions.
D'autant plus que avec la puissance de .Net, suivant comment tu pense ton code, tu peux avoir plusieurs chemins pour arriver à la même chose.