2013-03-14 6 views
2

J'ai un problème avec Date. Je reçois la date en utilisant: measure.getDate() et j'ai obtenu 0 Sun Jun 09 14:09:00 résultat CEST 2012 dans mon journal. Mais quand j'utilise measure.getDate().getDay()) j'ai obtenu 0, pour measure.getDate().getMonth() J'ai obtenu le résultat 5 pour measure.getDate().getYear()) J'ai eu 112. Comment puis-je obtenir un bon format de jour, mois et votre?Mauvaises valeurs pour les données

JSONArray jsonArray; 
     try { 
      jsonArray = new JSONArray(response); 
      List<Measure> measures = new Measure.BuilderJSON().buildList(jsonArray); 
      for(Measure measure: measures){ 
       addParamsToLists(measure); 
       Log.v("eqwdasfas1", ""+measure.getDate().getDay()); 
       Log.v("eqwdasfas2", ""+measure.getDate().getDate()); 
       Log.v("eqwdasfas3", ""+measure.getDate().getYear()); 
       Log.v("eqwdasfas4", ""+measure.getDate().getMonth()); 
       Log.v("eqwdasfas5", ""+measure.getDate()); 
      } 




     } catch (JSONException e) { 
      e.printStackTrace(); 
     } 

Je ne sais pas pourquoi getDate() retourne une bonne valeur et d'autres fonctions renvoient mal

+0

Fournissez votre code –

+0

Postez votre classe de mesure – Pragnani

Répondre

1

De the documentation pour Date:

Dans toutes les méthodes de la classe Date qui acceptent ou année de retour , mois, date, heures, minutes et secondes, les représentations suivantes sont utilisées:

Une année y est représentée par l'entier y - 1900.

Un mois est représenté par un nombre entier de 0 à 11; 0 est Janvier, 1 est Février, et ainsi de suite; donc 11 est Décembre.

Une date (jour du mois) est représentée par un nombre entier de 1 à 31 de la manière habituelle. Une heure est représentée par un nombre entier de 0 à 23. Ainsi, l'heure de minuit à 1 heure est l'heure 0, et l'heure de midi à 13 heures. est l'heure 12.

Une minute est représentée par un nombre entier de 0 à 59 de la manière habituelle.

Une seconde est représentée par un nombre entier de 0 à 61; les valeurs 60 et 61 ne se produisent que pour les secondes intercalaires et même dans les implémentations Java qui suivent correctement les secondes intercalaires.

Alors, pour vos questions, Juin est 5, dimanche est 0 et 112 = (2012 - 1900).

Questions connexes