lampe = Microsoft.VisualBasic.Right(Text2Display, 6)
Dim gauche = Microsoft.VisualBasic.Left(lampe, 2)
Dim droite = Microsoft.VisualBasic.Right(lampe, 3)
lampe = droite & gauche
lampe = Replace(lampe, " ", "")
Dim temp = "&H" & lampe
Dim hexData As Integer = temp
Dim sHex As String = Convert.ToString(hexData, 16)
lampe = Convert.ToInt32(sHex, 16)
Je m'explique, j'ai une chaîne de caractère (ici : Text2Display ) qui à pour valeur par exemple : "00 2F 20 03 " (avec un espace à la fin).
C'est en fait une trame de réponse en base 16. Je souhaite sélectionner les deux dernier octets (soit "2003") et le convertir en base 10 afin d'avoir la valeur visuellement.
Le code plus haut fonctionne mais je trouve ça long et laborieux.
Bonjour,
Et que donnerait l'utilisation "malsaine" de ce bon vieux Val de VB6, à savoir :
lampe val(lampe) vers string ?
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
sans compter (pour le cas où tu ne voudrais pas utiliser ce "bête" Val), que j'ai "comme l'impression" que tu aurais le même résultat en remplaçant (Par Replace) les espaces de lampe par ""
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Soit une form avec deux Textbox ( Entree contient la chaine d'origine et Sortie contiendra le résultat)
Attention on convertit ici en valeurs non signées
Pour les valeurs signées utiliser Convert.toInt32
Dim chaine As String, valeur As UInteger
Entree.Text = "00 2F 20 03 " ' ton exemple
chaine = Entree.Text
chaine = chaine.Replace(" ", "")
chaine = chaine.Substring(4)
valeur = Convert.ToUInt32(chaine, 16)
Sortie.Text = valeur.ToString
La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Veut juste dire que lampe prend les 6 derniers caractères de Text2Display.
Lampe n'est donc pas un objet !
Lampe n'est qu'une variable de type string
Quand même !
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
il faudrait surtout éviter ce mélange horrible VB 6.0 - VB Net
La solution précédente en VB Net pur tient en 3 lignes sans les déclarations de variables ni le remplissages des Textbox que j'ai utilisées dans mon post précédent
La théorie, c'est quand on sait tout et que rien ne fonctionne. La pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.