|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité régulier
![]() Étudiant Inscription : novembre 2008 Messages : 10 ![]() |
Le programme suivant me renvoie une exception mais je n'en comprends pas la cause.
Code :
Code :
.64000E+02 .39000E+02 .77000E+02 .21500E+02 .43250E+00 Code :
Merci d'avance. |
||||
|
|
00
|
|
|
#2 |
|
Invité régulier
![]() Étudiant Inscription : novembre 2008 Messages : 10 ![]() |
Après quelque test il semble que ce code se comporte correctement sur windows 32 bit mais qu'il lève l'exception sur windows 64 bit lorsqu'il est excecuté sur une jvm oracle 32 ou 64 bit.
Je ne vois vraiment pas où se trouve mon erreur .
|
|
|
00
|
|
|
#3 |
|
Expert Confirmé Sénior
![]() Inscription : septembre 2004 Messages : 5 092 ![]() |
Contrairement à Double.parseDouble(), un Scanner cherche à parser selon une Locale précise, et si ça ne correspond pas il lance cette exception.
Si on ne lui indique pas de Locale précise il va prendre la Locale par défaut, ce qui dans ton cas : - est l'anglais sur le windows 32 bits. - est probablement le français sur le windows 64 bits. En français, le séparateur décimal est une virgule, pas un point. D'où l'erreur. Correction : ajouter cette ligne |
|
|
10
|
Copyright © 2000-2012 - www.developpez.com