Copie du contenu du fichier texte et de le copier à un autre

C'est ce que mon professeur m'a fourni dans ses propres mots.

"Écrire un programme qui copie le contenu d'un fichier texte spécifié par l'utilisateur et le copie dans un autre fichier texte "copy.txt". Pas de ligne dans le fichier devrait être de plus de 256 caractères."

Voici le code que j'ai imaginé jusqu'à présent avec son info:

#include <stdio.h>
#include <io.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>

int main ( void )
{
   char filename[256]="";       //Storing File Path/Name of Image to Display
   static const char file2name[] = "C:\\Users\\Rael Jason\\Desktop\\Rael's iPod\\Codeblocks\\copy.txt";
   FILE *file; 
   FILE *write;
   printf("Please enter the full path of the text file you want to copy text: ");
   scanf("%s",&filename);
   file = fopen ( filename, "r" );
   file = fopen (file2name, "r" );

   if ( file != NULL )
   {
      char line [ 256 ]; /* or other suitable maximum line size */
      char linec [256]; //copy of line

      while ( fgets ( line, sizeof line, file ) != NULL ) /* read a line */
      {

         fputs ( line, stdout ); /* write the line */
         strcpy(linec, line);



         fprintf (write , linec);
         fprintf (write , "\n");
      }
      fclose (write);
      fclose ( file );
   }
   else
   {
      perror ( filename ); /* why didn't the file open? */
   }
   return 0;
}

J'ai juste ne peut pas sembler obtenir le fichier d'écriture fait? Pouvez-vous s'il vous plaît aider?

  • Ne devrait pas fichier = fopen (file2name, "r" ) être écrire = fopen(file2name, "w")?
  • Vérifier les lignes d'ouverture de nouveau les fichiers. Je suis sûr que vous l'aurez! 🙂