Menu

Problème date Java [Résolu]

Messages postés
25
Date d'inscription
jeudi 29 novembre 2018
Statut
Membre
Dernière intervention
5 avril 2019
- - Dernière réponse : guewen56
Messages postés
25
Date d'inscription
jeudi 29 novembre 2018
Statut
Membre
Dernière intervention
5 avril 2019
- 3 déc. 2018 à 23:48
Bonjour,

J'ai un souci sur les date quand je doit insérer les données.

int dateJ = uneVisite.getDate().getDay();
int dateM = uneVisite.getDate().getMonth();
int dateA = uneVisite.getDate().getYear();
String date = dateA+"-"+dateM+"-"+dateJ+" 00:00:00";


Quand j’exécute mon code les quatre ligne ci-dessus me retourne:
'118-11-3 00:00:00'


Je voudrais que sa me retourne
'2018-11-03 00:00:00'

J'ai aussi
getDay() , getMonth() et getYear()
qui se barre dans le code je ne sais pas si il y a un rapport.

Pouvez-vous m’aidez ?

Merci D'avance pour vos réponses
Afficher la suite 

Votre réponse

1 réponse

Meilleure réponse
Messages postés
15964
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 avril 2019
3552
1
Merci
Bonjour,

Les méthodes sont barrées car elles sont dépréciées (depuis très très longtemps) et ne devraient donc plus être utilisées.

Quant au résultat il est normal, le problème vient des méthodes qui ne font pas ce que tu penses, par exemple getYear renvoie le nombre d'années depuis 1900 (donc 118...)

Regardes plutôt la méthode String.format ou la classe Calendar.

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 40936 internautes nous ont dit merci ce mois-ci

guewen56
Messages postés
25
Date d'inscription
jeudi 29 novembre 2018
Statut
Membre
Dernière intervention
5 avril 2019
-
Merci pour ta réponse KX

je vais me renseigner sur la question
guewen56
Messages postés
25
Date d'inscription
jeudi 29 novembre 2018
Statut
Membre
Dernière intervention
5 avril 2019
-
La solution que j'ai trouvée et qui fonctionne dans mon cas :

java.text.DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd 00:00:00");
String uneDate = dateFormat.format(date);


Voila, Merci pour l'aide fournis
KX
Messages postés
15964
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
12 avril 2019
3552 > guewen56
Messages postés
25
Date d'inscription
jeudi 29 novembre 2018
Statut
Membre
Dernière intervention
5 avril 2019
-
Que l'on peut aussi écrire directement avec String.format, sans utiliser DateFormat :

String uneDate = String.format("%1$tF %1$tT", date);
guewen56
Messages postés
25
Date d'inscription
jeudi 29 novembre 2018
Statut
Membre
Dernière intervention
5 avril 2019
-
D'accord, à voir.

Merci pour ta réponse KX
Commenter la réponse de KX