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 :

Obtenir une durée


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 144
    Par défaut Obtenir une durée
    Bonjour!
    J'ai un programme dans lequel je dois obtenir un temps d'execution, j'extrais donc la date de debut et de fin en millisecondes... Existe t'il une API pour obtenir simplement la difference entre deux dates en hh:mm:ss?

    Merci d'avance,
    LDPDC

    PS: s'il faut le faire à la main je le ferait mais je suppose que cela n'est pas necessaire...

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 097
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 097
    Par défaut
    Regarde apres currentTimeMillis() dans Class System.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 144
    Par défaut
    Citation Envoyé par wax78 Voir le message
    Regarde apres currentTimeMillis() dans Class System.
    Merci, mais ça c'est déjà fait, la question est de savoir comment parser ça en hh:mm:ss ensuite...

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 55
    Par défaut
    Tu commences ton programme par cet appel
    Date d1 = new Date();

    A la fin de la dernière instruction, tu fais

    System.out.println("durée en secondes depuis le début : " + ((double) (new Date().getTime() - d1.getTime())) / 1000);

    et tu a le résultat en nombre de secondes.



  5. #5
    Membre émérite Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Par défaut
    Le plus simple c'est de faire la différence des currentTimeMillis, puis new Date(la_difference), et pour formater tu utilises SimpleDateFormat

    cf : la FAQ sur le formatage de date

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2008
    Messages : 55
    Par défaut
    Tu fais ce que je t'avais dit sauf que tu remplace le message par celui là

    System.out.println("le temps est "+(new SimpleDateFormat().format(d2.getTime()-d1.getTime())));

    Là tu l'obtiendra comme tu le voulais avec SimpleDateFormat().


  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 144
    Par défaut
    Citation Envoyé par remika Voir le message
    Le plus simple c'est de faire la différence des currentTimeMillis, puis new Date(la_difference), et pour formater tu utilises SimpleDateFormat

    cf : la FAQ sur le formatage de date
    C'est en fait ce que j'avais essayé, seulement la soustraction entre les deux TimeMillis nous donne epoch + la durée mesurée, donc si je parse avec un SimpleDate, j'obtiens ma durée + une heure, que je peux bien évidemment soustraire mais ça manque d'élégance et c'est pour ça que j'ai posé cette question.

    Après tout c'est peut être la seule solution, mais je suis vraiment étonné qu'il n'existe pas de classe capable de passer de millisecondes en heures/min/sec

    Merci à tous en tout cas pour vos réponses et si quelqu'un possède une meilleure solution, qu'il n'hésite pas!

Discussions similaires

  1. [Forum] Obtenir une durée à partir de deux chaines de caractères
    Par foufou27 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 24/03/2012, 18h59
  2. Comment obtenir la durée d'une vidéo?
    Par bakabdel dans le forum ASP.NET
    Réponses: 0
    Dernier message: 13/04/2009, 13h39
  3. obtenir la durée d'exécution d'une méthode simple
    Par Benoit_T dans le forum Delphi .NET
    Réponses: 2
    Dernier message: 27/03/2009, 11h12
  4. [SQL] Ajouter une durée à une date et obtenir une date valide
    Par bigltnt dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 05/06/2007, 14h55
  5. Formater une durée sous la forme Heure:Minute:Seconde
    Par marsupile dans le forum C++Builder
    Réponses: 2
    Dernier message: 31/01/2004, 23h29

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