String en VB: parcours des éléments...

Big Ben -  
maily Messages postés 7560 Statut Contributeur -
Je programme en général en C, et j'aimerai pouvoir parcourir une chaine de caractère en VB comme je le fais en C, car je dois transcrire cette chaine en instruction... un peu comme le ferai un interpretteur de commande.
J'ai à ma disposition une chaîne de caractère de longueur variable Ligne que j'ai récupéré dans un fichier à l'aide de la fonction Line Input #1, Ligne
Je souhaite pouvoir parcourir cette chaine caractère par caractère pour effectuer mes comparaison et mes traitements.

Je n'ai pour l'instant trouvé que des fonctions de travail sur les chaînes dans leur globalité, comme Instr, Mid, Left, ...

Peut-on accéder indiciellement à un caractère d'un type de donné String ?

Par exemple, si le caractère est un #, ce caractère est supprimé et le caractère suivant vaut sa valeur ASCII - 64

Merci.
Benoît.

Pour les connaisseurs:

while(Buffer[i] != '\0')
{
if Buffer[i] == '#'
{
ligne[j++] = Buffer[i+1] - 64;
i++;
i++;
}
else
{
ligne[j++] = Buffer[i++];
}
}

6 réponses

  1. maily Messages postés 7560 Statut Contributeur 453
     
    Bonjour!!

    Oui, normalement, on peut acceder à un caractère d'une chaine indiciellement... Je l'ai fait beaucoup de fois!!

    Bonne continuation!

     Maily   :-)))) L'hirondelle ne fait pas le printemps
    mais le dromadaire fait le désert.
    0
  2. Big Ben
     
    OK merci... mais comment ??? Comme un tableau avec les paranthèses: Ligne(i) ???
    Car je n'ai pas réussi pour l'instant.
    0
  3. maily Messages postés 7560 Statut Contributeur 453
     
    Avec des crochets il me semble, tout simplement...

    ligne[i]


     Maily   :-)))) L'hirondelle ne fait pas le printemps
    mais le dromadaire fait le désert.
    0
  4. Big Ben
     
    Les crochets servent à indiquer des noms externes à une application. Par contre pour accéder à un élément dans un tableau il faut utiliser les paranthèses. Mais lorsque j'utilise des paranthèses pour afficher le caractère dans mon Print ou sur une MsgBox j'ai une erreur de compilation: Type Incompatible.
    Comprends pas.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Big Ben
     
    Quelqu'un a une idée ???
    Si quelqu'un peu me transcrire le code C écrit plus haut en code VB... Ca pourrait m'aider à comprendre le fonctionnement des Strings.
    Ca pourra m'aider cet été sur la plage .
    Non c'était une blague...

    Merci de votre aide.
    Ben.
    0
  7. maily Messages postés 7560 Statut Contributeur 453
     
    Non!
    Excuse moi, ça fait longtemps que je n'avais pas fait de vb
    Il faut utiliser les fonctions de manipulation de string
    notamment 'mid' qui permet de récupérer une sous chaine d'une chaine...

    désolée encore une fois!

     Maily   :-)))) L'hirondelle ne fait pas le printemps
    mais le dromadaire fait le désert.
    0