damdam04
Messages postés27Date d'inscriptionmardi 25 mai 2004StatutMembreDernière intervention20 novembre 2006
-
11 juin 2004 à 22:41
damdam04
Messages postés27Date d'inscriptionmardi 25 mai 2004StatutMembreDernière intervention20 novembre 2006
-
12 juin 2004 à 23:55
salut le monde des programmeurs
j'ai deja posté un message sur le forum de VB sur le splitage de fichier...
"je cherche comment décomposer des lignes, que je récupére dans un fichier *.dat, en plusieurs cellules d'un tableau.
je m'explique, j'ai un fichier .dat qui contient plusieur milliers de lignes. chaque lignes est composée de texte et de séparateur ( soit "," soit ";").
ex: bonjour;damdam;04;;;marseille;...
je cherche un code qui me permette de récupérer le texte entre chaque séparateur.
merci d'avance à tous ceux qui répondront à ce message... "
un mail m'a été envoyé avec l'adresse d'une source mais je ne peux découper le fichier que par taille...
donc si quelqu'un peut m'aider....
merci d'avance
ps je suis débutant en c donc c'est pour ça que je reformule ma demande...
merci
damdam04
Messages postés27Date d'inscriptionmardi 25 mai 2004StatutMembreDernière intervention20 novembre 2006 11 juin 2004 à 22:43
merci beaucoup de votre aide, j'ai réussi à faire ce que je voulais...
maintenant je cherche à le faire en C ou C++, parce que le VB c'est un peu lent... ou alors je ne connais pas les astuces pour optimiser mon code...
elguevel
Messages postés718Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention22 novembre 20163 12 juin 2004 à 12:07
Faut utiliser la fonction 'strtok' !
tient j'tai fait un pt'it bout de code qui te permet d'afficher les lignes que tu souhaite a l'ecran :
=> Buffer represente le fichier en memoire !
un premier strtok permet de faire la recherche de la première occurance, par contre pour trouver les autres tu n'est plus obliger de specifier la chaine à parcourir, pour çà que j'ai fait une boucle for avec un strtok qui contient un NULL .
je sais pa si je m'exprime clairement mais voila le code !
*************************
// Split de fichier par ELGUEVEL
#include <windows.h>
#include <stdio.h>
/* Retourne la taille du fichier en octet */ (methode maizon)
int longFichier( FILE *ffile )
{
int len;
elguevel
Messages postés718Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention22 novembre 20163 12 juin 2004 à 12:10
Heuuu pour VB .. c vrai que ce langague est lent mais je le pratique aussi, la fonction est plus simple, tu lit ton fichier, et tu le place dans une varaible ou autre comme precedemment genre :
Open fichier for input as #1
do while not EOF(1)
input #1, variable
Loop
Close #1
et ensuit etu a juste a declarer un tableau et a utiliser la fonction Split (n'existe qu'avec VB6 je croit).
Dim Tableau() as string
Tableau = Split ( variable, seprateur) <= heu je croit que c çà j'ai pas la fonction sous les yeux .
Allé @+
Damien
Vous n’avez pas trouvé la réponse que vous recherchez ?
damdam04
Messages postés27Date d'inscriptionmardi 25 mai 2004StatutMembreDernière intervention20 novembre 2006 12 juin 2004 à 23:55
ben en fait mon fichier fait plus de 1.5 Mo alors pour le stocker pas de souci, mais lorsque je travaille dessus et que je le réécrit dans un fichier, la , ça prends du temps, et j'ai besoin d'en gagner...
merci encore pour ton aide damien, c'est exactement se que j'ai fait dans mon code...