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

Langage Java Discussion :

Recuperer le format de la date system


Sujet :

Langage Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 46
    Points : 40
    Points
    40
    Par défaut Recuperer le format de la date system
    bonjour
    j'ai cherger beaucoup sur le net, et je n'ai pas trouver un moyen de recuperer le format de la date system par programmation.
    je n'ai pas besion de formater une date , mais vraiment de stocker le format de la date system, quelquechose qui me donne jj/mm/aaaa ou tous autre chose...

    sinon et ce qu'il y'a moyen de changer le Local ou seulement le format de la date system à partir d'un programme java.

    toute aide est extraiment apricié

    bonne année 2007

  2. #2
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    A ma connaissance, lorsque tu recuperes une date tu n'as pas son pattern.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Date d = new Date();
    Te donne la date à l'instant t, sous format Date.
    Donc après c'est à toi de la formater selon le pattern que tu souhaites, et donc ainsi changer le pattern de la date system.

    Il est possible de changer les locales bien sur, afin de pouvoir recuperer les heures qui correspondent suivant le pays.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 46
    Points : 40
    Points
    40
    Par défaut
    merci pour ta reponce

    en effet ce n'est pas la date qui m'interesse mais son format choisi dans le systeme.

    pour le local j'ai essayer la foction setLocal(Local l), mais ça ne change rien dans mon cas.

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Si tu cherches à formater une date, il y a l'objet SimpleDateFormat que tu peux utiliser.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    SimpleDateFormat sdf = new SimpleDateFormat();
     
    // Récupérer le format pattern    
    System.out.println(sdf.toPattern());
     
    // Formater la date en rapport au format pattern
    Date ad = new Date(System.currentTimeMillis());
    System.out.println( sdf.format(ad) );
    Pas certain d'avoir compris ce que tu cherches à faire...

    A+

  5. #5
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Un champ date n'as pas de format. Le format ne sert qu'a l'affichage. C'est pour cela que tu dois toi meme en spécifié une si tu veux l'afficher.

    Qu'essayes tu de faire car je ne comprend pas trop ton problème.

  6. #6
    Membre éprouvé
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Points : 1 085
    Points
    1 085
    Par défaut
    Le format par défaut (extrait de la classe java.util.Date):

    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
    public String toString() {
        DateFormat formatter = null;
        if (simpleFormatter != null) {
            formatter = (DateFormat)simpleFormatter.get();
        }
        if (formatter == null) {
            /* No cache yet, or cached formatter GC'd */
            formatter = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy",
                             Locale.US);
            simpleFormatter = new SoftReference(formatter);
        }
            synchronized (formatter) {
                formatter.setTimeZone(TimeZone.getDefault());
                return formatter.format(this);
            }
        }
    C'est donc définit en dur.

  7. #7
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    Si j'ai bien compris ton problème, il est en deux parties.

    1) Est-ce qu'on peut en Java récupérer le paramétrage du système pour les dates ? (par exemple sous windows savoir que le système est paramétré avec comme format de date yyyy-MM-dd)

    Je ne pense pas. Ce que tu peux faire, c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    (new SimpleDateFormat()).toPattern();
    Ca ca va te donner le format de date par défaut que Java a sur cette machine, mais ce n'est pas garanti que ce soit cohérent avec le paramètrage de l'OS (notamment sous Windows où tu peux définir une locale et un format de date différent de celui de la locale).

    2) Peut-on changer le format de date géré par Java ?

    Tu peux en effet changer le format de date par défaut de Java en changeant la locale :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Locale.setDefault(...);
    Attention, quand on dit format de date pour Java, on parle bien de l'objet SimpleDateFormat qui permet de faire les conversions String<->Date.
    Bien entendu, un objet Date reste un objet Date et n'a pas de "format" ...

    J'espère que ça répond à tes questions

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

Discussions similaires

  1. recuperation date systeme dans une base my sql
    Par zied.ellouze dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 11/12/2007, 11h55
  2. recuperation date systeme dans une base my sql a l'aide d'un jsp
    Par zied.ellouze dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 10/12/2007, 09h04
  3. recuperation d'un portion de la date systeme
    Par arezki76 dans le forum Shell et commandes GNU
    Réponses: 8
    Dernier message: 16/01/2007, 15h16
  4. recuperer la date system
    Par Abdou1 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 12/07/2006, 12h20
  5. Pb de recuperation heure et date systeme
    Par d.w.d dans le forum C++
    Réponses: 3
    Dernier message: 28/01/2005, 23h39

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