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 :

[VB6/VB.Net] Quel est l'équivalent de l'expression Mid ?


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    29
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 29
    Par défaut [VB6/VB.Net] Quel est l'équivalent de l'expression Mid ?
    salut à tous

    Je voudrais obtenir ceci
    2000 = 00xx
    ou
    2000 = xx
    en utilisant cette expression ceci stVal = Mid(stVal, z, xy) où "xx" represente mon resultat effectif.
    Comment le fait-on?

    Merci
    NB : respect des espaces. exple: entre 2000 et le signe =
    PS: Je n'ai pas trop de notions de VB.
    Désolé!

  2. #2
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    Désolé mais je n'ai pas compris vraiment ce que tu voulais faire. Tu peux expliquer d'une autre mnaière stp ?

  3. #3
    Membre Expert
    Avatar de Delbeke
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    2 675
    Détails du profil
    Informations personnelles :
    Âge : 71
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 2 675
    Par défaut
    Heu, si on veut programmer quelque chose, on indique de où on part et où on veut aller. Ben la , tu nous dis où tu veux aller, sans nous dire d'où tu pars. Enfin c'est que j'ai compris. çà reste très flou tout çà

  4. #4
    Membre averti
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    29
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 29
    Par défaut
    Mon point de depart est ce bout de code :
    En effet mon resultat est affiché dans la variable stVal

    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
    43
    44
    45
    46
    47
    48
    49
     
        Private Sub cmdRead_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdRead.Click
            Dim stMsg As String
            Dim iNum As Integer
            Dim stVal As String
            Dim stAddr As String
     
            mainTextBox1.Text = ""
            stAddr = UCase(txtAddress.Text)
            While Len(stAddr) < 4
                stAddr = "0" & stAddr
            End While
            stMsg = "R" & stAddr & vbCrLf
     
            stVal = ""
            myCom.Timeout = 8000
            myCom.Write(stMsg)
            'myCom.Read(stVal)
            myCom.ClearInputBuffer()
            mainTextBox1.Text = ""
     
            Try
                iNum = myCom.Read(20)
                If (iNum = 0) Or (iNum <> 20) Then
                    MsgBox("Ricevuti " & iNum & " caratteri", MsgBoxStyle.Exclamation + MsgBoxStyle.OkOnly)
                End If
     
     
     
                stVal = myCom.InputStreamString()
     
                If InStr(stVal, "ERROR") <> 0 Then
                    MsgBox("ERROR", MsgBoxStyle.OkOnly) '
                ElseIf (Mid(stVal, 1, 5) = "R" & stAddr) Then
                    stAddr = Mid(stVal, 12, 4)
                    stVal = Mid(stVal, 9, 12)
                    mainTextBox1.Text = stVal
     
                Else
                    MsgBox("RISPOSTA ERRATA", MsgBoxStyle.OkOnly) '
                End If
                mainTextBox1.Text = stVal
     
            Catch ex As Exception
                myCom.Timeout = 0
            End Try
     
     
        End Sub
    dans stVal j'obtiens par exemple ceci:
    Moi j'aimerais que mon resultat soit plutôt affiché comme suis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    2000 = 00FF ou plutôt comme suit
    2000 = FF

  5. #5
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 197
    Par défaut
    rien compris non plus
    mais .net en général on utilise plus len mid et autre ucase
    sur la classe string il y a plein de choses donc sur ta variable string tu fais .length .substring ou .toupper etc...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  6. #6
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    En .Net onn utilise les méthode de string comme dit précédement, soit :
    Split, Substring, Trim, ...

    Si tu veux supprimer les nombres de la partie : FF00, et que celle n'est pas toujours constante (pas même taille, pas toujours 2 chiffres mais des fois plus, pas toujours au même endroit), tu peux faire cela :
    Faire un Split avec = sur stval
    récupérer le deuixème membre.
    Le parcourir caractère par caractère.
    Appliquer la méthode IsDigit de char pour savoir qui est un digit.
    Conservé l'index des charactère qui sont des digits.
    Faire un ensemble de substring pour récupérer les parties non digit.
    Et finir par une concaténation des strings obtenus.

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

Discussions similaires

  1. [VB.NET] Quel est l'équivalent du StringTokenizer JAVA ?
    Par Benzeghiba dans le forum VB.NET
    Réponses: 3
    Dernier message: 14/05/2006, 17h36
  2. [C#] Quel est l'équivalent du MyClass VB.Net ?
    Par prophetky dans le forum C#
    Réponses: 5
    Dernier message: 12/05/2006, 14h32
  3. [VB.Net > C#] Quel est l'équivalent de CType ?
    Par igorzup dans le forum VB.NET
    Réponses: 2
    Dernier message: 11/05/2006, 15h38
  4. Réponses: 2
    Dernier message: 23/03/2006, 10h56
  5. [ADO.Net][VB.Net] Quel est l'équivalent du RecordSet ?
    Par dinbougre dans le forum Accès aux données
    Réponses: 17
    Dernier message: 23/02/2006, 14h24

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