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

Collection et Stream Java Discussion :

Format Date particulier


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2012
    Messages : 18
    Par défaut Format Date particulier
    Il n'y a rien à faire, aprés des heures de recherche intensives je ne trouve pas solution.

    Je vous explique mon soucis, je dois créer un programme qui effectue certaines actions, une fois que je ferme le programme il sauvegarde les modification effectuée dans un fichier de texte.

    Le programme sauvegarde donc mes données et plus particulièrement la date via ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    output.write(  %Date" + " " + book.getPublicationDate()+ "\n");
    L'inscrit donc dans mon fichier texte comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fri Jan 01 00:00:00 CET 1971
    Mais n'arrive pas à recharger la date avec ce code lors de l'utilisation suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
                    	ligne = cleanStrings(ligne);
                    	book.setPublicationDate(parseStringToDate(ligne));
    cleanStrings(ligne) supprime simplement de %Date et effectue un trim().
    Je vous donne le code de parseStringToDate qui n'a pas été réalisé par moi mais donné pour nous aider dans notre tache:
    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    	   private Date parseStringToDate(String s) {
    	       Date d = null;
    	       if (s.contains("-")){
    	           try {
    	               String dayRangeFormat = "dd-dd MMM yyyy";
    	               DateFormat dayRangeDateFormat = new SimpleDateFormat(dayRangeFormat, Locale.US);
    	               d = dayRangeDateFormat.parse(s);
    	           } catch (ParseException e) {
    	               try {
    	                   String monthDayRangeFormat = "MMM dd - MMM dd yyyy";
    	                   DateFormat monthDayDateFormat = new SimpleDateFormat(monthDayRangeFormat, Locale.US);
    	                   d = monthDayDateFormat.parse(s);
    	               } catch (ParseException e1) {
    	                   try {
    	                       String dayMonthRangeFormat = "dd MMM - dd MMM yyyy";
    	                       DateFormat dayMonthRangeDateFormat = new SimpleDateFormat(dayMonthRangeFormat, Locale.US);
    	                       d = dayMonthRangeDateFormat.parse(s);
    	                   } catch (ParseException e2) {
    	                       try {
    	                           String dayMonthRangeFormat2 = "dd MMM- dd MMM yyyy";
    	                           DateFormat dayMonthRangeDateFormat2 = new SimpleDateFormat(dayMonthRangeFormat2, Locale.US);
    	                           d = dayMonthRangeDateFormat2.parse(s);
    	                       } catch (ParseException e3) {
    	                           try {
    	                               String nonsenseRangeFormat = "dd-dd yyyy yyyy";
    	                               DateFormat nonsenseRangeDateFormat = new SimpleDateFormat(nonsenseRangeFormat, Locale.US);
    	                               d = nonsenseRangeDateFormat.parse(s);
    	                           } catch (ParseException e4) {
     
    	                               //throw new RuntimeException(e4);
    	                               System.err.println(e4);
    	                           }
    	                       }
    	                   }
    	               }
    	           }
    	       }
    	       else{
    	           try {
    	               d = defaultDateFormat.parse(s);
    	           } catch (ParseException e) {
    	               try {
    	                   d = alternativeDateFormat.parse(s);
    	               } catch (ParseException e1) {
    	                   throw new RuntimeException(e1);
    	               }
    	           }
    	       }
    	       return d;
    }

    J'ai essayer de créer un nouveau format de date, d'utiliser les getter de la class Date rien ne fonctionne, je bloque complétement.

    Je voudrais pouvoir sortir ma date sous un format MM/yyyy.
    Par exemple "fév 1992"
    Et aussi sous un format dd/MM/yyyy.
    Par exemple "23/03/2007"

    Je me rend bien compte que ma question est vague, n'hésitez pas à me demander des précisions, mais j'ai beau essayer un peu tout et n'importe quoi, lire des topic déjà existant, c'est la panne sèche. Rien ne m'apporte une solution satisfaisante.

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Pour formatter une date, il faut utiliser SimpleDateFormat avec le format souhaité...


    a++

Discussions similaires

  1. Format date : y'a forcément plus simple...
    Par ZERS dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 02/12/2004, 15h28
  2. Transformation en format Date
    Par Jean-Matt dans le forum Langage SQL
    Réponses: 6
    Dernier message: 16/11/2004, 16h20
  3. Tester un format date
    Par Tapioca dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 30/06/2004, 10h18
  4. interfaces Access et format Date
    Par say dans le forum InterBase
    Réponses: 21
    Dernier message: 10/05/2004, 17h24
  5. Format date
    Par cochet dans le forum Bases de données
    Réponses: 4
    Dernier message: 02/03/2004, 08h37

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