[C] probleme de lecture de 2 fichier texte li
Bonjour,
j'ai un ptit souci c'est que je trouve pas une idée pour lire à chaque fois la ligne 1 du fichier texte 1 et la ligne 1 du fichier 2, les concatener pour les mettre dans un nouveau fichier texte 3, et puis ligne 2 du fichier 1, ligne 2 du fichier 2, ainsi de suite.
merci
j'ai un ptit souci c'est que je trouve pas une idée pour lire à chaque fois la ligne 1 du fichier texte 1 et la ligne 1 du fichier 2, les concatener pour les mettre dans un nouveau fichier texte 3, et puis ligne 2 du fichier 1, ligne 2 du fichier 2, ainsi de suite.
merci
Configuration: Windows Vista Internet Explorer 7.0
8 réponses
-
tu peux utiliser fscanf pour lire dans le fichier 1 tu le stocke dans une variable ensuite encore un fscanf pour lire dans le fichier 2 tu le stocke dans une autre variable tu fais un concatenation sur ces deux variables et avec un fprintf tu recopie la concatenation dans le fichier 3
-
merci Mype pour ta reponse rapide ;)
mais moi j'aimerais conactener les lignes; pas le fichier1 et puis le fichier 2
voila de cette forme;
ligne1_fich1 ligne1_fich2 .
ligne2_fich1 ligne2_fich2.
...
ligneN_fich1 ligneN_fich2.
voila :) -
ben oui ben ça devrait marcher la methode que je t'ai donné...
tu ouvres tes 3 fichiersf1=fopen("texte1.txt","r"); f2=fopen("texte2.txt","r"); f3=fopen("texte3.txt","w");puis tu fais une boucle pour lire dans le fichier 1 puis dans le fichier 2 que tu stocke dans deux variables puis tu concatene ces deux variables et tu recopies dans le fichier 3for(i=0;i<nb_de_ligne;i++) { fgets(texte1,100,f1); fgets(texte2,100,f2); strcat(texte1,texte2); fprintf(f3,"%s",texte1); }comme tu fais une boucle ça va te le faire ligne par ligne... -
merci Mype
-
ContributeurSalut,
A noter qu'il faut être sûr que les fichiers font moins de 100 caractères. Et qu'il vaut mieux utiliser strncat que strcat. -
:( oui, mais j'ai de gros fichier de taille de 1GO.
oula -
ContributeurLa taille est peu importe.
Ce qu'il faut savoir c'est le nombre maximum de caractères par lignes.
Sinon, tu es parti pour copier caractère par caractère jusqu'à obtention du retour chariot indiquant le changement de lignes. -
ok merci fiddy :)