PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → Remplissage d'un tableau verticale colonne par colonne
Remplissage d'un tableau verticale colonne par colonne
Iniciado por mahe_tylan, 07,mar. 2019 07:01 - 6 respuestas
Miembro registrado
4 mensajes
Publicado el 07,marzo 2019 - 07:01
Bonjour,

Je dois remplir un tableau verticale avec des éléments d'un fichier texte.
Mon problème est que je dois lire le fichier ligne par ligne et renseigner une colonne par élément d'une ligne.
Ex :
1) tableau -> colonne1 colonne2 colonne3
2) fichier
élément1->RC
élément2->RC
élément3->RC

3) tableau complété
colonne1 colonne2 colonne3
élément1 élément2 élément3

Avez-vous une idée?



Merci
Publicado el 07,marzo 2019 - 08:47
Bonjour
Peut être que la solution du tableau vertical est la solution à ton problème ?!
Miembro registrado
299 mensajes
Publicado el 07,marzo 2019 - 09:15
Donc vous faites 2 boucles :
une pour lire le fichier ligne par ligne
sLigneLue = fLitLigne(nNumFichier) // Lecture de la 1ère ligne
TANTQUE sLigneLue <> EOT // Test de la fin de fichier


pour chaque ligne vous éclatez en 3 éléments
LT_Ligne est un tableau de chaîne
ChaîneVersTableau(sLigneLue, LT_Ligne, RC)


il ne reste plus qu'à valoriser la table finale
LN_Ligne est un entier = MaTable.ajouteLigne("")
MaTable.Col1[LN_Ligne = LT_Ligne[1]
MaTable.Col2[LN_Ligne = LT_Ligne[2]
MaTable.Col3[LN_Ligne = LT_Ligne[3]
OU vous faites une BOUCLE
pour i = 1 _a_ 3
MaTable[LN_Ligne, i] = LT_Ligne[i]
FIN
Miembro registrado
4 mensajes
Publicado el 07,marzo 2019 - 17:04
Merci pour votre retour.
Je vais tester.
Miembro registrado
4 mensajes
Publicado el 07,marzo 2019 - 20:42
Voici le type de fichier texte que je dois lire :

#FLG 000
#VER 18
#DEV XPF
#MECG
VE
010219
250219
1
34

414000
4755001000
41440763

Fact TEST
3
280219
0,000000
0,00
0
0
46091



0
0
0


0
0
0



BC 2019-000197
0
0


0

Je dois récupérer toutes les informations sauf les vides dans un tableau graphique verticale.
Avez-vous une méthode pour alimenter chaque colonne de mon tableau?

Merci
Miembro registrado
2.682 mensajes
Publicado el 08,marzo 2019 - 06:54
Bonjour,

C'est plutôt simple, il te suffit d'ouvrir le fichier avec fouvre() et de le lire avec fLitLigne() ou alors de charger tout le fichier avec fChargeTexte() et de la parcourir dans une boucle de type POUR TOUTE CHAINE x de y SEPAREE PAR RC.

--
Cordialement,

Philippe SAINT-BERTIN
Mensaje modificado, 08,marzo 2019 - 06:55
Miembro registrado
299 mensajes
Publicado el 08,marzo 2019 - 10:07
fChargeTexte suppose de charger tout le fichier en mémoire.
La lecture en boucle lit ligne par ligne.

Je ne pense pas que ce soit le cas ici mais j'ai connu le cas de fichiers très volumineux (plusieurs GO) qui faisaient planter quand on les chargeait en mémoire. J'ai passé des jours à corriger, ca ne m'a pas trop amusé et depuis, j'évite. Par principe.