[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
Configuration: Windows Vista
Internet Explorer 7.0

8 réponses

  1. 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
    0
    1. 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 :)
      0
      1. ben oui ben ça devrait marcher la methode que je t'ai donné...

        tu ouvres tes 3 fichiers
        f1=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 3
        for(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...
        0
        1. Contributeur
          Salut,
          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.
          0
          1. :( oui, mais j'ai de gros fichier de taille de 1GO.
            oula
            0
            1. Contributeur
              La 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.
              0