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 :

Aide pour comprendre une fonction [Débutant]


Sujet :

VB.NET

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 48
    Points : 33
    Points
    33
    Par défaut Aide pour comprendre une fonction
    Bonjour à tous


    Je me suis mis depuis quelques heures à la programmation sur Visual basic .net

    Je me vois contraint de convertire une varaible String en une suite de Byte . En gros j'aimerais visualiser quelque part les bytes que compose mon string.

    Pour cela, j'ai écrit cela:

    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
        '1)Création du message
     
        Private Sub BpSendMsg_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BpSendMsg.Click
     
     
            Dim IdMsgBinaire As String     'Valeur de l'ID du message associée à la TextBox
            Dim ValmsgBinaire As String    'Valeur du message contenu dans la messaeg bix
            Dim IdDatabinaire As String    'Valeur de la text box associée a l'ID data
            Dim toto As Int32
     
            'Conversion du string en integer
     
            IdDatabinaire = TxtMsgIdData.Text
            IdMsgBinaire = TxtMsgIdMsg.Text
            ValmsgBinaire = TxtMsgValMsg.Text
     
            'Appel de la fonction de conversion
     
            StrToByteArray(str:=IdDatabinaire)
     
     
            MsgBox(IdDatabinaire & "         " & IdMsgBinaire & "         " & ValmsgBinaire)
     
        End Sub
     
     
     
        Public Shared Function StrToByteArray(ByVal str As String) As Byte()
     
     
            Dim encoding As New System.Text.UTF8Encoding()
     
     
     
            Return encoding.GetBytes(str)
     
        End Function 'StrToByteArray

    J'avoue, j'ai trouver sur le net la fonction


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
        Public Shared Function StrToByteArray(ByVal str As String) As Byte()
     
     
            Dim encoding As New System.Text.UTF8Encoding()
     
     
     
            Return encoding.GetBytes(str)
     
        End Function 'StrToByteArray
    Le problème c'est qu'il n'y avais pas le mode d'emploi et je ne comprend pas comment récupérer le résultat de la conversion pour l'afficher.

    Quelque peut-il éclairer ma lenterne ?

    Par avance merci pour le temps consacré à me lire et/ou répondre.

    Meilleures salutations

    Vorens

  2. #2
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Salut
    Le problème c'est qu'il n'y avais pas le mode d'emploi
    bah il faut demander au magasin

    comment récupérer le résultat de la conversion pour l'afficher.
    si tu veux l'afficher dans un listbox
    ta fonction StrToByteArray
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    dim mybytes() as byte
     mybytes =  StrToByteArray("TOTO1234")
    For Each item In mybytes
                ListBox1.Items.Add(item)
     Next

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 48
    Points : 33
    Points
    33
    Par défaut
    Re,

    Merci pour ta réponse =)

    A force de me triturer le cerveau j'ai trouvé une solution comme sa

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim R As Byte() = StrToByteArray(str:=IdDatabinaire)
    En gros je range dans un tableau de byte le résultat quand j'appel la fonction et apres je l'affiche dans une message de box de façon artisanale

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
            toto = R.Rank + 1
            MsgByte = ""
            H = 0
            For o As Integer = 1 To toto
     
                MsgByte = MsgByte & R(H) & vbLf
     
                H = H + 1
     
            Next
     
            MsgBox(MsgByte)
    et par miracle, sa a fonctionné.

    Maintenant, j'essais de transcrire une variable en string =>Hexa => déc => byte => déc => Hexa

  4. #4
    Membre éprouvé

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Points : 929
    Points
    929
    Par défaut
    Tout d'abord si tu codes en vb.net
    retire la réference visualbasic comme ça tu prendras la bonne habitude
    de coder en pure vb.net
    projet -> tonprojet properties -> reference
    après compilation tu vas obtenir une erreur
    vblf inconnu
    vblf -> Environment.NewLine

    tu veux convertir un nombre en hexa pas trop compris

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2012
    Messages : 48
    Points : 33
    Points
    33
    Par défaut
    Re,


    En fait j'aimerais l'afficher en format Hexa. tout fonctionne sauf ma derniere ligne de code que j'arrive pas a écrire.


    RetourString = 15 format int32 (cette variable est traitée dans une fonction et sa valeur de sortie dans l'exemple est 15)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
     Dim ValRecuHexa As String = String.Format(RetourString,NumberStyles.HexNumber)
     
            ValRecuHexa.Format("D", RetourString, NumberStyles.HexNumber)
     
            MsgBox(ValRecuHexa)
    Mon but, est que cette valeur de sortie de fonction 15 en décimale soit afficher dans ma message box en hexa donc F

    Dans monde code "ValRecuHexa.Format" est souligné en vert avec l'erreur suivant:

    Accès d'un membre partagé, d'un membre de constante, d'un membre enum ou d'un type imbriquer via une instance; l'expression qualifiante ne sera pas évaluée
    késako ?

    Edit: en haut de code j'ai écrit les deux lignes suivant pour accèder a certaine possibilités

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Imports System.IO
    Imports System.Globalization

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

Discussions similaires

  1. Besoin d'aide pour créer une fonction
    Par xavxx58 dans le forum Prolog
    Réponses: 13
    Dernier message: 14/09/2008, 13h03
  2. demande d'aide pour comprendre une requete SQL
    Par Halloula dans le forum Langage SQL
    Réponses: 5
    Dernier message: 09/04/2008, 18h14
  3. Aide pour comprendre une METHODE
    Par youssoufoued dans le forum Langage
    Réponses: 4
    Dernier message: 04/01/2008, 21h54
  4. [Free Pascal] Aide pour comprendre une erreur de compilation
    Par SimoBenz dans le forum Free Pascal
    Réponses: 7
    Dernier message: 05/12/2006, 18h43
  5. Réponses: 4
    Dernier message: 18/11/2006, 22h58

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