Se connecter / S'enregistrer
Votre question

Nommer un fichier

Tags :
  • completer
  • Programmation
Dernière réponse : dans Programmation
23 Décembre 2009 19:02:27

Bonjour. En faisant mon projet de C je rencontre un problème.
Voici mon code:


  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #define MAX_LEN 300
  4.  
  5.  
  6. int creer()
  7. {
  8. FILE* fichier;
  9. char entree[MAX_LEN];
  10. printf("Donner un nom a cette todo-liste:\n");
  11. fgets(entree, MAX_LEN,stdin);
  12. fichier=fopen("todo-lists.txt","a+");
  13. fputs(fgets(entree, MAX_LEN, stdin),fichier);
  14. fclose(fichier);
  15.  
  16. }




Le contenu de "entree" c'est ce que j'ai tapé au clavier. Par exemple je tape "Aller au magazin". La question est: comment completer mon code pour que le fichier crée "todo-lists.txt" soit renommé en "aller au magazin.txt"...En gros je veux qu'il soit nommé en fonction de ce que je tape au clavier
La fonction rename ne le fait pas....pareil pour fopen.
Avez-vous une idée
Merci beaucoup

Autres pages sur : nommer fichier

a b L Programmation
23 Décembre 2009 19:21:26

Le mieux est d'utiliser strcat pour ajouter le ".txt" et de passer la chaine dans le fopen().
m
0
l
23 Décembre 2009 19:40:43

Tu peux coder ça stp....J'ai déjà essayé avec fopen, ça marchait pa.mais il peut etre que j'ai mal codé. merci
m
0
l
Contenus similaires
a b L Programmation
23 Décembre 2009 20:37:28

Comment as-tu codé ça?
m
0
l
23 Décembre 2009 21:31:13

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #define MAX_LEN 300
  4. int creer()
  5. {
  6. FILE* fichier;
  7. char entree[MAX_LEN];
  8. printf("Donner un nom a cette todo-liste:\n" );
  9. fgets(entree, MAX_LEN,stdin);
  10. strcat(entree,".txt");
  11. fichier=fopen(entree,"a+" );
  12. fputs(fgets(entree, MAX_LEN, stdin),fichier);
  13. fclose(fichier);
  14. }


ou

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #define MAX_LEN 300
  4. int creer()
  5. {
  6. FILE* fichier;
  7. char entree[MAX_LEN];
  8. printf("Donner un nom a cette todo-liste:\n" );
  9. fgets(entree, MAX_LEN,stdin);
  10. strcat(entree,".txt");
  11. fichier=fopen("todo-lists.txt,"a+" );
  12. fputs(fgets(entree, MAX_LEN, stdin),fichier);
  13. fclose(fichier);
  14. rename("todo-lists.txt",entree);
  15. }


Les 2 ne marchent pas. Avez-vouz une autre méthode7
m
0
l
a b L Programmation
23 Décembre 2009 22:29:59

Je ne vois pas de problème avec le premier, qu'est-ce qui ne marche pas?
m
0
l
23 Décembre 2009 23:19:11

ça ne crée pas le fichier, mais renvoie une erreur (tu sais une fenetre de Windows avec demande d'envoyer les données de cette erreur)
m
0
l
a b L Programmation
23 Décembre 2009 23:40:54

Bien, alors n'imbrique pas le fputs et fgets.
Ajoute des printf un peu partout pour savoir ce qu'il y a dans entree après chaque modification et pour savoir où se situe le crash.
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS