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

Big Ben -  
maily Messages postés 7556 Date d'inscription   Statut Contributeur Dernière intervention   -
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++];
}
}
A voir également:

6 réponses

maily Messages postés 7556 Date d'inscription   Statut Contributeur Dernière intervention   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
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
maily Messages postés 7556 Date d'inscription   Statut Contributeur Dernière intervention   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
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
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
maily Messages postés 7556 Date d'inscription   Statut Contributeur Dernière intervention   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