Un fichier ds un tableau

cs_nono93 Messages postés 2 Date d'inscription jeudi 6 février 2003 Statut Membre Dernière intervention 7 février 2003 - 6 févr. 2003 à 23:45
cs_nono93 Messages postés 2 Date d'inscription jeudi 6 février 2003 Statut Membre Dernière intervention 7 février 2003 - 7 févr. 2003 à 18:23
bonjour j ai grand besoib d aide c pour mon projet de fin d année je connais un peu visual mais la on ma posé une colle

donc je dispose d' un fichier txt de cette forme

bobo.txt

G0 X10 Y50 Z10 xxx
G1 Y10 Z20

je desirerai lire le fichier et mettre tout dans un tableau
pour voous c peu etre simple mais moi g un peu de mal

la 2 eme partie c identifier donc organiser chaque parti dans le tableau puis identifier separement et donner un code visual pour faire un dessin car c une succession d ordre
enfin si kk un peu me donner des pistes ou meme un code pour me simplifier la tache ca serai sympa car la ca tourne au cauchemard

Merci a tout ceux qui m aiderons

2 réponses

SibosisITS Messages postés 72 Date d'inscription mardi 26 février 2002 Statut Membre Dernière intervention 20 juin 2003
7 févr. 2003 à 11:57
Pour ouvrir un fichier texte (ou n'importe quel autre fichier), on utilise l'instruction 'Open'. Dans le cas présent, l'idéal est de faire une lecture ligne par ligne, et de découper ensuite la ligne courante, qui est stockée sous la forme d'une chaine de caractère... mais je crois qu'un peu de code rendra les choses plus clair... (j'écris, et je commente après)

Dim LigneEnCour as String
...
Open "NomduFichier" For Input As #1
While Not(EOF(1)) 'Tant qu'on n'est pas en fin de fichier
Line Input #1, LigneEnCour 'Lit la ligne courante.
'traitement de la ligne... j'y reviendrait
...
Wend
Close #1
...

Voilà pour la structure générale. Maintenant, les commentaires :
* 'As #1' : ceci associe au fichier qui vient d'être ouvert un numéro d'identification (ici, c'est 1) ;
* EOF(1) retourne Vrai si la fin du fichier identifié par
le numéro 1 est atteinte, non sinon. Ainsi, 'While Not(EOF(1))' permet de parcourir l'intégralité du fichier, jusqu'à sa dernière ligne.

- Pour ce qui est du traitement de la ligne récupérée :
je ne sais pas si tu dois découper la ligne à chaque fois que tu rencontres un espace(dans "G0 X10 Y50 Z10 xxx" par exemple), et comment tu dois stocker les données. Toutefois, voici une méthode qui permet de découper suivant les espaces (je suppose déclarées les variables que je vais utiliser) :

LigneEnCour = Trim(LigneEnCour) 'Supprime tous les espaces en début et fin de chaîne
While LigneEnCour<>""
Pos = InStr(LigneEnCour, " ") 'recherche la première occurence d'un espace dans la chaîne
If pos<>0 then
Tmp$ = Left(LigneEnCour,Pos-1)
LigneEnCour = Trim(Mid(LigneEnCour, Pos+1))
Else
Tmp$ = LigneEnCour
LigneEnCour=""
end If
'Ici, tu stockes Tmp$ là où tu veux qu'il soit stocké.
Wend

Voilà !!! J'espère que tout est clair.

@++ et bonne prog...

(: Sibo ;)
0
cs_nono93 Messages postés 2 Date d'inscription jeudi 6 février 2003 Statut Membre Dernière intervention 7 février 2003
7 févr. 2003 à 18:23
merci de ton aide ca va grandement m aider

donc deja je pense que je vais suprimer les espace entre les caracteres

par contre une fois ds le tableau je desirerai en sortir une trace graphique c a dir

le G00 ligne

GO1 cercle du genre

X Y Z les coordonnées du point suivant

donc j hesite entre faire un fichier qui sera lu par la suite
ou faire avec des variable en live

j ai envisager de faire kk chose pour la reconnaissance des caracteres mais c pas non plus comment faire
0
Rejoignez-nous