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 :

calculer difference date


Sujet :

Collection et Stream Java

  1. #1
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    679
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 679
    Par défaut calculer difference date
    bonjour
    je cherche à faire la diférence entre deux date date actuele et date stocké dans la base de donnée
    voila exemple
    date a = resultat.getdate("date_fin");
    qui donne 2008-04-10
    Date date1 = new Date();
    j'aurais comme résultat 4

    merci de m'avoir aider

  2. #2
    Membre émérite Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Par défaut
    d.getDate() te renvoi le jour du mois (ici 14)

  3. #3
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    679
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 679
    Par défaut
    Citation Envoyé par jojodu31 Voir le message
    d.getDate() te renvoi le jour du mois (ici 14)
    date1 c'est la date actuelle renvoie 14 04 2008
    et a qui renvoie 2008-04-10
    donc la difference c'est 4

  4. #4
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    679
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 679
    Par défaut
    calculer la différence date stocké sur la base et date actuelle
    comme par exemple
    une date stocké dans une table 20-03-2007 et la date aujourd'uit 14-05-2008
    j'espere que tu m'as compris

  5. #5
    Membre chevronné Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Par défaut
    Faut calculer les 2 dates en ms ( getTime de tête ).
    Puis convertir la différence en jour...

    où alors faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select sysdate -Tonchamp from Table
    dans ta requete SQL ....

  6. #6
    Membre émérite
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2003
    Messages
    782
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2003
    Messages : 782
    Par défaut
    pour des calcul sur des dates il faut regarder du coté de joda-time qui du plus devrait être dans un proche avenir intégré au jdk (si je ne m'abuse)

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 33
    Par défaut
    Et au passage utilise java.sql.Date si tu veux jouer avec les dates de la bases de données, parce que c'est pas le meme format que java.util.Date

  8. #8
    Membre Expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Par défaut
    Citation Envoyé par fnobb Voir le message
    pour des calcul sur des dates il faut regarder du coté de joda-time qui du plus devrait être dans un proche avenir intégré au jdk (si je ne m'abuse)
    Intégré pour Java7.
    Joda-Time est, de plus, plus performant que l'API actuelle au niveau du traitement des dates (plus simple et plus rapide... que demander de plus ?).

    Citation Envoyé par Wydicule
    Et au passage utilise java.sql.Date si tu veux jouer avec les dates de la bases de données, parce que c'est pas le meme format que java.util.Date
    Jamais entendu parler d'une chose pareille. Pour info :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java.sql.Date extends java.util.Date
    java.sql.Date ne devrait être employé que pour les insertions/lectures JDBC. Pour les manipulations => java.util.Date (enfin bon, moi j'utilise Joda-Time depuis un moment maintenant, je ne retournerais en arrière pour rien au monde).

  9. #9
    Membre éprouvé Avatar de bobmidou
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2008
    Messages : 121
    Par défaut
    salut

    tu peux recuperer le nombre de jour :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Date today = new Date();
     
    long diff = (today.getTime() - a.getTime())/(1000*60*60*24); // a est la date de la BD
    Bonne chance

  10. #10
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Heu pq vous vous emmerdez à jouer avec les millisecondes (qui posent d'ailleur problème, toutes les journées ne font pas exactement 24h de 60 minutes, 60 secondes!)

    En standard y a l'api calendar qui gère déjà les jours calendriers, même si cette api est plus chiant (faut s'amuser à àjouter à tronquer les dates à minuit et ajouter un jour à la fois jusqu'à atteindre la bonne date)

    sinon, +1 pour Joda Time

  11. #11
    Membre chevronné Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    Heu pq vous vous emmerdez à jouer avec les millisecondes (qui posent d'ailleur problème, toutes les journées ne font pas exactement 24h de 60 minutes, 60 secondes!)
    Depuis quand ?

  12. #12
    Membre Expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Par défaut
    Salut,

    Petite contribution à ce post... Je viens de tomber sur un lien très intéressant sur les Dates...

    Voilà, j'espère que ça vous aidera...
    ++
    Gueritarish

  13. #13
    Membre chevronné Avatar de JoloKossovar
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    532
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 532
    Par défaut
    Citation Envoyé par Gueritarish Voir le message
    Salut,

    Petite contribution à ce post... Je viens de tomber sur un lien très intéressant sur les Dates...

    Voilà, j'espère que ça vous aidera...
    ++
    Gueritarish

    The bug in this trivial calculation is that in many areas of the world where there is daylight savings time, one day is 23 hours long and another is 25 hours long


    Pour les anglophobe, en gros un jour peut durer 23 heures ou 25 heures selon la région du monde...
    abérant ^^

  14. #14
    Membre Expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Par défaut
    Citation Envoyé par JoloKossovar Voir le message
    The bug in this trivial calculation is that in many areas of the world where there is daylight savings time, one day is 23 hours long and another is 25 hours long

    abérant ^^
    Alors pour "défendre" l'auteur de l'article de mon post, je donnerais un autre lien sur lequel s'appuie le premier auteur (et qui a l'air relativement sérieux...)... autre lien
    Voilà, ++
    Gueritarish

  15. #15
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Soit un truc m'échappe soit ce "bug" ne tient pas la route.

    Le constructeur Date() s'appuie sur System.currentTimeMillis() qui renvoi le nombre de millisecondes écoulées depuis 00h00 UTC du 1 janvier 1970. Or UTC veut justement dire "coordinated universal time".

    Ensuite quand on manipule les dates, il faut toujours le faire avec l'heure GMT afin justement d'éviter ces confusions.

  16. #16
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    679
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 679
    Par défaut
    thanks , it help me very much

  17. #17
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par miloux32 Voir le message
    Depuis quand ?
    Depuis qu'on a une différence entre l'heure d'été et l'heure d'hiver (journées respectivement de 23h et 25h) et depuis qu'on a des "LEAP seconds".

    Citation Envoyé par java.util.Date
    A second is represented by an integer from 0 to 61; the values 60 and 61 occur only for leap seconds and even then only in Java implementations that actually track leap seconds correctly. Because of the manner in which leap seconds are currently introduced, it is extremely unlikely that two leap seconds will occur in the same minute, but this specification follows the date and time conventions for ISO C.

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

Discussions similaires

  1. calculer difference date heure en jours ouvres
    Par wahabts7 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/04/2010, 23h48
  2. [AC-2003] calcul difference entre 2 dates et heures
    Par rene10 dans le forum IHM
    Réponses: 1
    Dernier message: 27/08/2009, 16h51
  3. calcul difference entre deux dates
    Par bambino13 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 22/06/2009, 10h01
  4. Valeur calculée difference entre deux dates #NOMBRE!
    Par gracouille dans le forum SharePoint
    Réponses: 3
    Dernier message: 13/06/2008, 11h59
  5. PB/calcul de difference date/heures
    Par edhos dans le forum Access
    Réponses: 1
    Dernier message: 06/10/2005, 08h05

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