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

Développement de jobs Discussion :

HH:mm:ss to double(minute)


Sujet :

Développement de jobs

  1. #1
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 98
    Points
    98
    Par défaut HH:mm:ss to double(minute)
    Bonjour !

    J'ai une donnée qui arrive en format string sous la forme d'un temps : HH:mm:ss
    Vu que je ne peux pas sum sur un temps dans le logiciel que j'utilise, j'improvise en essayant de sommer l'équivalent en minute

    C'est à dire que si le temps vaut 01:00:00, l'équivalent sera 60 (minutes)
    Si c'est 00:15:00, l'équivalent sera 15
    00:00:54, l'équivalent sera 54/60
    00:02:15, l'équivalent sera 2 + 15/60

    Le problème auquel je suis confronté c'est que dans ma tMap, j'ai un bout de "code" vraiment moche qui ressemble à ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Integer.parseInt((row11.Duree).substring(0,2)) * 60 + Integer.parseInt((row11.Duree).substring(3,5)) + 
    (double)(int)(Double.parseDouble((row11.Duree).substring(6, 8)) / 60 * 100)/100
    où row11.Duree est mon champ en question.

    Le problème est donc double :

    Les résultats laissent parfois passer des erreurs tel qu'une réponse comme : 54,8400000005 alors que la réponse devrait être 54,84. Il reste plus de 2 décimales, ce qui ne devrait pas être le cas. Je connais les soucis qui existe avec le stockage de nombre réel en bits, je suppose donc que cela provient de là mais je ne sais pas comment le résoudre dans ce cas-ci...

    En plus, je perd une petite quantité de données du au arrondit tel que réalisé ainsi

    Ma question est donc comment remédier à ceci ? Avez-vous un code qui serait plus adapté (surement je n'en doute pas) ?

    Wazzouille :-)

  2. #2
    Membre expérimenté Avatar de supergeoffrey
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2010
    Messages
    795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

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

    Informations forums :
    Inscription : Octobre 2010
    Messages : 795
    Points : 1 685
    Points
    1 685
    Par défaut
    TalendDate.getPartOfDate("String indicating the part of the date to be retrieved, "String in the format of the date to be parsed")
    https://help.talend.com/display/Tale...dDate+Routines
    Pensez à marquer vos tickets comme résolus.
    Pensez aussi aux pour les réponses pertinantes

    Quand une discution est résolue depuis un moment pour revenir dessus, il est mieux d'en crée une nouvelle avec un lien vers l'autre car :
    • Elle sera en haut du forum, elle sera donc plus visible
    • Une discussion résolue, on ne passe pas dessus pour aider, on passe dessus si on a le même problème
    • Tu demandes surement à tes clients de faire le même

  3. #3
    Membre régulier
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2015
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Avril 2015
    Messages : 90
    Points : 98
    Points
    98
    Par défaut
    Bonjour,

    merci pour la réponse, finalement j'ai utilisé une autre technique :-)

    Merci !

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

Discussions similaires

  1. [.COM] Réserver de la RAM fct 48h int 21h
    Par bulerias dans le forum x86 16-bits
    Réponses: 5
    Dernier message: 06/12/2010, 14h33
  2. calcul melangeant int et long int ?
    Par ThR dans le forum C
    Réponses: 2
    Dernier message: 06/01/2003, 01h13
  3. [Dev c++ 4] implicite declaration of function "int kbhi
    Par Torpedox dans le forum Dev-C++
    Réponses: 5
    Dernier message: 01/01/2003, 13h37
  4. "ALTERER" une col. NULL en NOT NULL - Int
    Par Gandalf24 dans le forum SQL
    Réponses: 2
    Dernier message: 28/12/2002, 00h07
  5. Les INT en mode protégé
    Par le mage tophinus dans le forum x86 16-bits
    Réponses: 8
    Dernier message: 05/12/2002, 16h13

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