Créer un fichier dont le nom inclue la date
Résolu
hazelia
Messages postés
40
Date d'inscription
Statut
Membre
Dernière intervention
-
hazelia Messages postés 40 Date d'inscription Statut Membre Dernière intervention -
hazelia Messages postés 40 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Mon programme doit créer chaque fois un fichier (de log), je veux que le nom chaque fichier issu d'une exécution de mon programme contient la date d'exécution de celui-ci. Je fais donc comme suit:
// ce bout de code convertit la date courante du système en chaine de caractères
// et l'ajoute dans le nom du fichier. L'extention est également ajoutée
string currentTime=ctime(¤t_time);
size_t t=currentTime.size();
currentTime.resize(t-1); // pour supprimer le retour à la ligne
logFileName="logFile_"+currentTime;
logFileName += ".txt";
Mais mon programme n'arrive pas à ouvrir le fichier en écriture....
Auriez-vous une idée de l'origine du problème?!!
Merci d'avance de me répondre^^
Mon programme doit créer chaque fois un fichier (de log), je veux que le nom chaque fichier issu d'une exécution de mon programme contient la date d'exécution de celui-ci. Je fais donc comme suit:
// ce bout de code convertit la date courante du système en chaine de caractères
// et l'ajoute dans le nom du fichier. L'extention est également ajoutée
string currentTime=ctime(¤t_time);
size_t t=currentTime.size();
currentTime.resize(t-1); // pour supprimer le retour à la ligne
logFileName="logFile_"+currentTime;
logFileName += ".txt";
Mais mon programme n'arrive pas à ouvrir le fichier en écriture....
Auriez-vous une idée de l'origine du problème?!!
Merci d'avance de me répondre^^
A voir également:
- Créer un fichier dont le nom inclue la date
- Comment réduire la taille d'un fichier - Guide
- Fichier bin - Guide
- Fichier .dat - Guide
- Creer un fichier .bat - Guide
- Créer un compte google - Guide
5 réponses
Bonjour
As-tu affiché LogFileName ?
Quel format de date utilises-tu ?
S'il y a des / dedans, c'est normal qu'il refuse, car les / l'envoient chercher dans des sous-répertoires qui n'existent sûrement pas
As-tu affiché LogFileName ?
Quel format de date utilises-tu ?
S'il y a des / dedans, c'est normal qu'il refuse, car les / l'envoient chercher dans des sous-répertoires qui n'existent sûrement pas
Bonjour,
J'ai affiché le logFileName:
logFile_Mon Jul 11 09:38:45 2011.txt
J'ajoute par la suite le répertoire dans le quel je désire avoir ces fichiers, il est de type C:/Rep1/Rep2/logFileName.txt
Ce répertoire existe puisque j'envoie mes test d'exécution dedans. Il suffit que je supprime la date du nom de fichier pour que le fichier soit crée.
J'ai affiché le logFileName:
logFile_Mon Jul 11 09:38:45 2011.txt
J'ajoute par la suite le répertoire dans le quel je désire avoir ces fichiers, il est de type C:/Rep1/Rep2/logFileName.txt
Ce répertoire existe puisque j'envoie mes test d'exécution dedans. Il suffit que je supprime la date du nom de fichier pour que le fichier soit crée.
J'ai besoin d'avoir l'heure dans mon nom de fichier. Y-t-il un moyen de convertir ou formater cette date de manière à ne pas contenir ce genre de caractères?!!
Merci d'avance
Merci d'avance
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re:Bonjour,
Voila, je viens de trouver comment avoir le format voulu sans ces caractères que ne sont pas acceptés dans un nom de fichier:
time_t current_time;
time(¤t_time);
struct tm * timeInformation;
char currentTime [100];
timeInformation = localtime ( ¤t_time );
strftime (currentTime,100,"%a_%b_%d_%Y_%H_%M_%S",timeInformation);
// conversion de char* vers string current_Time;
current_Time.assign(currentTime);
Ainsi logFileName est "logFile_Mon_Jul_11_2011_10_31_07.txt"
Merci pour l'aide :D et bonne journée :)
Voila, je viens de trouver comment avoir le format voulu sans ces caractères que ne sont pas acceptés dans un nom de fichier:
time_t current_time;
time(¤t_time);
struct tm * timeInformation;
char currentTime [100];
timeInformation = localtime ( ¤t_time );
strftime (currentTime,100,"%a_%b_%d_%Y_%H_%M_%S",timeInformation);
// conversion de char* vers string current_Time;
current_Time.assign(currentTime);
Ainsi logFileName est "logFile_Mon_Jul_11_2011_10_31_07.txt"
Merci pour l'aide :D et bonne journée :)