biker45
Messages postés14Date d'inscriptionmardi 17 décembre 2002StatutMembreDernière intervention 9 juin 2008
-
5 juin 2008 à 14:31
biker45
Messages postés14Date d'inscriptionmardi 17 décembre 2002StatutMembreDernière intervention 9 juin 2008
-
5 juin 2008 à 15:39
Bonjour, voila, j'ai un petit probleme concernant la lecture d'un fichier, voici le début du fichier pour que vous compreniez mon probleme:
"
Area Mean Min Max Circ.
1 6 255 255 255 1
2 5 255 255 255 1
3 3 255 255 255 1
4 5 255 255 255 1
"
La premiere colonne ne m'interresse pas. Je souhaite simplement avoir la donnée de la deuxieme colonne en sautant la premiere ligne. Donc la premiere valeur que je souhaite récupérer, c'est 6. Le fichier ci dessus représente le fichier result. Le nombre de colonne est fixe, par contre, le nombre de ligne de ce fichier ne l'est pas, donc l'ouvrir en séquentielle me semble la meilleur solution.
voici mon programme:
intresult = FreeFile
Open result For Input As #intresult
Input #intresult, ligne
Input #intresult, ligne
don() = Split(ligne, Chr(9))
Do While ligne <> ""
taille = don(1)
tableau(taille) = tableau(taille) + 1
Input #intresult, ligne
Loop
Close #intresult
L'erreur que j'ai, c'est la variable taille qui pose probleme. Dans don(1), je recupère 1 et non 6. Quelqu'un aurait il une idée pour que je puisse récupérer directement la valeur "area" (donc successivement 6-5-3-5...) quelque soit le nombre de ligne et sans connaitre le nombre de ligne?
lillith212
Messages postés1229Date d'inscriptionvendredi 16 novembre 2007StatutMembreDernière intervention16 juin 2009 5 juin 2008 à 15:23
Bonjour,
Je comprends pas une chose dans ton programme tu notes :
don() = Split(ligne, Chr(9))
mais ensuite tu fixes la valeur :
taille = don(1)
Donc qu'elle est ton interêt? N'est-ce pas la ton erreur?
biker45
Messages postés14Date d'inscriptionmardi 17 décembre 2002StatutMembreDernière intervention 9 juin 2008 5 juin 2008 à 15:39
à la base, je pensais que la fonction input allais me retourner toute la ligne avec des tabulations entre chaque colonne. Donc j'utilisais la fonction split pour diviser la ligne en plusieurs colonnes, la limite de chaque colonne étant représenté pas une tabulation. Ce qui me permettais de dire que la taille était égale à la colonne 1 (vu qu'il commence à compté à partir de 0). Le probleme c'est qu'il me retourne seulement le caractère qui se trouve avant le tab! Donc quand j'execute mon programme, le tableau don() n'a qu'une case qui contient 1! donc pas du tout ce que je veux!
Donc si quelqu'un à une idée pour que je récupère la ligne complete, je suis preneur. Tout autre solution est la bien venu bien entendu.