IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

[Filesystem] Création d'un fichier avec comme nom la date


Sujet :

C++

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 43
    Points : 28
    Points
    28
    Par défaut [Filesystem] Création d'un fichier avec comme nom la date
    Voila je dois créer un fichier, une fois par jour, avec la date comme nom de fichier...

    Voila ma fonction:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
        TDateTimeKind Kind=dtkDate;  
         TDTDateFormat DateFormat=dfLong;  //Changement du type d'affichage de la date
     
         AnsiString DateNomFichier;
         DateNomFichier=TDateTime::CurrentDate();  //Récupération de la date, jusque là tout marche
         AnsiString Test="C:\\";
         AnsiString FichierNom=Test+DateNomFichier; /
         char Fichier[40];
     
         strcpy(Fichier, FichierNom.c_str());   //Stocke le nom du fichier dans un char, pour la fonction ofstream
     
         ofstream outfile (Fichier, ios::app);  //Création du fichier
    Bon apparament tout marche sauf la récupération de date. D'après la doc, si les variables Kind et DateFormat doivent étre respéctivement afféctées des valeurs dtkDate et dfLong afin que la date soit sous format "vendredi 22 mai 2007" au lieu de 22/05/07. Car les " / " ne sont pas autorisés pour un nom de fichier.
    Le hic, c'est qu'en plaçant des break points, je me suis aperçu que le programme ne stocke pas la date sous la forme "vendredi ..." mai sous la forme abrégée "22/05/07"...
    Quesce qui ne va pas?

  2. #2
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 43
    Points : 28
    Points
    28
    Par défaut
    Bon j'ai résolu le probleme en stockant la date dans un char[10] et une boucle for(int i=0; i<10; i++) me changeant les "/" par des "_"...

    Mais si qq1 a une solution à ma première question... Je suis prenant!

  3. #3
    Membre à l'essai
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 11
    Points : 13
    Points
    13
    Par défaut
    !

    Tu peux faire un truc du genre (code pas testé) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    AnsiString asJour, asMois, asAnnee;
    unsigned short jour, mois, annee;
    TDateTime date = CurrentTime();
    date.DecodeDate(&annee, & mois, &jour);
    asAnnee = annee.IntToStr();
    asJour = jour.IntToStr();
    switch(mois)
    {
    case 1 : asMois = "Janvier";
    .
    .
    .
    case 12 : asMois = "decembre";
    }
     
    AnsiString Test="C:\\";
    AnsiString FichierNom=Test+asJour+" " +asMois+ " "+asAnnee;
    Apres pour trouver le jour de la semaine tu as la méthode de TDateTime 'DayOfWeek()', a l'aide d'un switch/case comme pour le mois ca doit le faire.

    Bon bah c'est sûr c'est un peu plus long mais devrait fonctionner.

    voilou

  4. #4
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 43
    Points : 28
    Points
    28
    Par défaut
    ok, merci pour la réponse, c'est pas mal comme principe. Mais bon vu que mon code marche avec la méthode que j'utilise, je vais garder ça. En tout cas, merci c'est toujours utile de voir d'autres méthodes!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Liaison de cellule avec comme nom du fichier une date
    Par philippe34130 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 19/11/2014, 09h50
  2. Réponses: 1
    Dernier message: 08/06/2012, 14h22
  3. Réponses: 1
    Dernier message: 04/12/2010, 17h08
  4. fichier texte avec comme nom une variable
    Par olobo dans le forum Débuter
    Réponses: 4
    Dernier message: 04/01/2010, 15h55
  5. créer un fichier avec comme nom la date du jour
    Par cedric00 dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 23/03/2009, 22h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo