|
|
|
|
long toto = (long) 30*(24*3600*1000);
long myDateLimitInMillis = System.currentTimeMillis()-toto;
System.out.println("Temps avant : "+System.currentTimeMillis());
System.out.println("Temps a enlever : "+toto);
System.out.println("Temps apres : "+myDateLimitInMillis);
java.sql.Timestamp myTS = new java.sql.Timestamp(myDateLimitInMillis);
java.sql.Timestamp today = new java.sql.Timestamp(System.currentTimeMillis());
System.out.println(myTS.toString());
System.out.println("Today = "+today.toString());
long toto = 30*(24*3600*1000);
long myDateLimitInMillis = System.currentTimeMillis()-toto;
System.out.println("Temps avant : "+System.currentTimeMillis());
System.out.println("Temps a enlever : "+toto);
System.out.println("Temps apres : "+myDateLimitInMillis);
java.sql.Timestamp myTS = new java.sql.Timestamp(myDateLimitInMillis);
java.sql.Timestamp today = new java.sql.Timestamp(System.currentTimeMillis());
System.out.println(myTS.toString());
System.out.println("Today = "+today.toString());
Configuration: Windows XP Internet Explorer 7.0
En fait c'est bon j'ai trouvé une autre facon de faire sans bidouiller :)
Voici le truc :
int num = 30;
java.util.Calendar myCal = java.util.Calendar.getInstance();
java.sql.Timestamp myTS = new java.sql.Timestamp(myCal.getTimeInMillis());
System.out.println("Date courante : "+myTS.toString());
myCal.add(java.util.Calendar.DATE,(-1) * num);
myTS = new java.sql.Timestamp(myCal.getTimeInMillis());
System.out.println("Date calculée : "+myTS.toString());
myCal.getTimeInMillis()
Merci. ~ iclic @ gauch,iclic, iclic @ droate, iclic, iclic et ya pas de bôg môsieu ! ~ |
Quand tu fais 30*(24*3600*1000); tu réalises ton calcul avec une précision max d'un Integer qui est assez limité pour un calcul de cette taille.
Par défaut, java fait ses calculs en int. Si tu mets 30.0*(24.0*3600.0*1000.0), il le fera en double. Si tu mets 30L*(24L*3600L*1000L), il comprendra que chaque nombre est un long Si tu mets 30f*(24f*3600f*1000f), il comprendra que chaque nombre est un float Cela a une importance car en info, un nombre selon son type va être codé sur 8, 16, 32 ou 64 bits. On comprend vite alors qu'un entier en 32 bits et qui plus est signé représente un ensemble fini de valeur pouvant être représenté. Je t'invite à regarder la classe Integer et les valeurs de MAX et MIN. Quand il y a un dépassement des valeurs limites, y'a un overflow, un peu comme si tu depassais sur ta voiture le kilometrage 999 999km, tu reviendrais à 000000, puis 0000001, etc... Réponse un peu tard, mais je viens de tomber par hasard sur ton post. |
| 15/03 14h02 | Installer Opera sous Ubuntu | Ubuntu |
| 25/08 11h48 | [Javascript] Interdire le clic droit de la souris | Javascript |
| 26/09 11h31 | Java Runtime Machine | Navigateurs |
| 05/11 11h45 | [Javascript] Date de dernière modification | Javascript |
| 05/11 11h52 | [Javascript] Effacer un champ de formulaire lors du clic (focus) | Javascript |
| 03/03 08h29 | [Java] addition de deux entiers. | 21 |
| 03/10 21h23 | Java, ecriture operateur | 2 |
| 20/10 18h11 | Javascript radio button et addition | 1 |
| 12/07 13h13 | [Javascript] Firefox et Opera VS Safari et IE | 1 |
![]() | Opera - Marre des trous de sécurité du navigateur par défaut ? Envie enfin d'avoir un navigateur simple et configurable facilement ?... | Catégorie: Navigateurs Licence: Freeware/gratuit |
![]() | Java Runtime Environment - Java Runtime Environment (JRE) installe la machine virtuelle Java, permettant de jouer en ligne, de discuter avec des... | Catégorie: Java Licence: Open Source |
![]() | Java Tools - Java Tools est un IDE très léger pour la création, la compilation, l'exécution et le débogage des applications Java et des... | Catégorie: Java Licence: Freeware/gratuit |
![]() | OperaUSB - Le célèbre navigateur Opéra est enfin disponible en version USB. OperaUSB est la version portative du célèbre navigateur... | Catégorie: Navigateurs Licence: Freeware/gratuit |
![]() | Mission Impossible : Operation | Catégorie: Jeu vidéo Gamecube | 21.38 € PriceMinister |
![]() | Thunderhawk : Operation Phoenix | Catégorie: Jeu vidéo PS2 | 30.00 € PriceMinister |
![]() | Mission Impossible : Operation | Catégorie: Jeu vidéo Xbox | 6.48 € PriceMinister |
![]() | Opera-Consonance CD-120 | Catégorie: Platine CD de salon | 959.00 € Son-Vidéo |