Partage
  • Partager sur Facebook
  • Partager sur Twitter

renommage de fichier

Sujet résolu
    10 octobre 2007 à 16:04:39

    bonjour à vous, je fait appelle à vous afin de savoir comment faire pour renommer un fichier en demandant à l'utilisateur par quel nom veut-il renommer le fichier.
    mon but est que ce soit l'utilisateur qui décide du nom du fichier.
    je vous remercie de votre compréhension.
    cordialement.
    • Partager sur Facebook
    • Partager sur Twitter
      10 octobre 2007 à 16:13:03

      1. char nomDuFichier[100] = "";
      2. printf("Veuiller entrer le nouveau nom du fichier : ");
      3. fgets(nomDuFichier, sizeof(nomDuFichier), stdin);
      4. rename("nomDeTonAncienFichier.txt", nomDuFichier);


      Un truc comme ça ...

      P.S : Ca fait longtemps que j'ai pas fait du C alors, c'est possible qu'il y ai des fautes.
      • Partager sur Facebook
      • Partager sur Twitter
        10 octobre 2007 à 16:37:06

        j'ai donc suivi les conseils qui mon été donné, mais le problème est que maintenant au niveau du rename , il me modifie le nom du fichier mais aussi le type ( fichier texte en fichier tous cour).
        pouvez vous regardez?
        je vous donne mon code, mais sachez qu'il faut créer un fichier texte avec trois nombre écrit dedans, qui doivent être chacun séparé par un espace, afin que cela fonctionne.

        je vous remercie d'avance de votre compréhension.
        cordialement.

        <code type="c">
        1. #include <stdio.h>
        2. #include <stdlib.h>
        3. #include <string.h>
        4. //prototype de fonction
        5. long calculChiffre(long nombre[], long tailleTableau);
        6. int main(int agrc, char *argv[])
        7. {
        8.     FILE *fichier = NULL;
        9.     long nombre[5] = {0};
        10.     fichier = fopen("texte.txt", "r");
        11.     long resultatChiffre = 0;
        12.     char nomDeFichier[20] = "";
        13.     if(fichier!= NULL)
        14.     {
        15.         printf("le fichier est ouvert avec succes\n\n");
        16.         fscanf(fichier, "%ld %ld %ld %ld %ld", &nombre[0], &nombre[1], &nombre[2], &nombre[3], &nombre[4]);
        17.         printf("votre chiffre est de : %ld, %ld, %ld, %ld, %ld\n\n\n", nombre[0], nombre[1], nombre[2], nombre[3], nombre[4]);
        18.         //appelle de la fonction pour calculer la somme de ces nombre
        19.         resultatChiffre = calculChiffre(nombre, 5);
        20.         //affichage de la somme obtenu
        21.         printf("la somme de ces chiffres est de : %ld ", resultatChiffre);
        22.         fclose(fichier);
        23.     }
        24.     else
        25.     {
        26.         printf("erreur lors de l'ouverture du fichier");
        27.     }
        28.     printf("veuillez entrer le nom du fichier : ");
        29.     scanf("%s", nomDeFichier);
        30.     printf("le nom du fichier saisi est %s", nomDeFichier);
        31.     rename("texte.txt", nomDeFichier);
        32.     return 0;
        33. }
        34. long calculChiffre(long nombre[], long tailleTableau)
        35. {
        36.     long resultatChiffre = 0;
        37.     long i = 0;
        38.     for(i = 0; i < tailleTableau; i++)
        39.     {
        40.         resultatChiffre += nombre[i];
        41.     }
        42.     return resultatChiffre;
        43. }
        • Partager sur Facebook
        • Partager sur Twitter
          10 octobre 2007 à 17:32:37

          L'utilisateur doit marquer fichier.txt

          Ou sinon, tu fais une fonction qui ajoute l'extension, si elle n'y est pas.
          • Partager sur Facebook
          • Partager sur Twitter
            10 octobre 2007 à 18:04:20

            oui je te remercie, mais j'ai fait des test depuis maintenant une bonne heure, et j'avais trouvé, mais je te remercie de ton aide si précieuse.
            par contre, je me suis rendu compte qu'il fallait que je fasse une fonction pour ajouter automatiquement le .TXT, mais je cherche et ne trouve pas comment mi prendre.
            pouvez vous m'aider.
            cordialement.
            • Partager sur Facebook
            • Partager sur Twitter
              10 octobre 2007 à 18:10:06

              Bon, je vais essayer, j'édite, si j'y suis arriver
              • Partager sur Facebook
              • Partager sur Twitter
                10 octobre 2007 à 18:14:32

                ok moi aussi je suis dessus.
                cordialement.
                • Partager sur Facebook
                • Partager sur Twitter
                  10 octobre 2007 à 18:15:32

                  voir strcat() ici par exemple : http://www.siteduzero.com/tuto-3-4144-1-les-chaines-de-caracteres.html#ss_part_3
                  A toi de voir comment l'utiliser c'est simple.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    10 octobre 2007 à 18:37:57

                    en fait oui, il suffisait juste de faire un strcat afin de copier le .TXT, j'ai donc tous fait pour que sa fonctione correctement, et la surprise!!! SA MARCHE IMPECABLE.

                    je remercie vraiement toute l'équipe du SDZ, vous êtes formidables. cordialement.

                    <code type="c">
                    1. #include <stdio.h>
                    2. #include <stdlib.h>
                    3. #include <string.h>
                    4. //prototype de fonction
                    5. long calculChiffre(long nombre[], long tailleTableau);
                    6. int main(int agrc, char *argv[])
                    7. {
                    8.     FILE *fichier = NULL;
                    9.     long nombre[5] = {0};
                    10.     fichier = fopen("test.txt", "r");
                    11.     long resultatChiffre = 0;
                    12.     char nomDeFichier[20] = "";
                    13.     const char chainetxt[] = ".txt";
                    14.     if(fichier!= NULL)
                    15.     {
                    16.         printf("le fichier est ouvert avec succes\n\n");
                    17.         fscanf(fichier, "%ld %ld %ld %ld %ld", &nombre[0], &nombre[1], &nombre[2], &nombre[3], &nombre[4]);
                    18.         printf("votre chiffre est de : %ld, %ld, %ld, %ld, %ld\n\n\n", nombre[0], nombre[1], nombre[2], nombre[3], nombre[4]);
                    19.         //appelle de la fonction pour calculer la somme de ces nombre
                    20.         resultatChiffre = calculChiffre(nombre, 5);
                    21.         //affichage de la somme obtenu
                    22.         printf("la somme de ces chiffres est de : %ld\n\n ", resultatChiffre);
                    23.         fclose(fichier);
                    24.     }
                    25.     else
                    26.     {
                    27.         printf("erreur lors de l'ouverture du fichier");
                    28.     }
                    29.     printf("veuillez entrer le nom du fichier : ");
                    30.     scanf("%s", nomDeFichier);
                    31.     printf("le nom du fichier saisi est %s", nomDeFichier);
                    32.     strcat(nomDeFichier, chainetxt);
                    33.     rename("test.txt", nomDeFichier);
                    34.     return 0;
                    35. }
                    36. long calculChiffre(long nombre[], long tailleTableau)
                    37. {
                    38.     long resultatChiffre = 0;
                    39.     long i = 0;
                    40.     for(i = 0; i < tailleTableau; i++)
                    41.     {
                    42.         resultatChiffre += nombre[i];
                    43.     }
                    44.     return resultatChiffre;
                    45. }
                    • Partager sur Facebook
                    • Partager sur Twitter

                    renommage de fichier

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown