Aller au contenu

Formater un Nombre. 2 chiffres après la virgule


systemz

Recommended Posts

Bonjour,

 

J'essaie de formater des nombres pour les insérer dans une BDD avec le type "DOUBLE".

Je veux qu'ils apparaissent avec 2 chiffres après la virgule.

Ex : 1 = 1.00

Ex : 1.0 = 1.00

Ex : 12.565 = 12.56

 

Mais j'ai une erreur qui se trouve au niveau de la 4ème ligne :

double amountDouble = 32.0;

String amountDouble1 = new DecimalFormat("0.00").format(amountDouble);
DecimalFormat decim = new DecimalFormat("0.00"); //Fonctionne bien
Double price2 = Double.parseDouble(decim.format(amountDouble)); // Erreur ici

Merci d'avance...

Lien vers le commentaire
Partager sur d’autres sites

Ok, je viens de tester à priori ceci devrait fonctionner.

double amountDouble = 32.123;
String amountDoubleFormated = new DecimalFormat("0.00").format(amountDouble);
Double price = Double.valueOf(amountDoubleFormated);

Mais je ne comprends pas bien une chose: Pourquoi ne pas stocker la valeur de ton double dans ta Bdd et ne le formater en un string avec deux décimales uniquement lorsque tu devras l'afficher ?

Lien vers le commentaire
Partager sur d’autres sites

+1 avec Vbarthel. Le stockage en base de données devrait être indépendant de la façon dont tu affiches ensuite ces données; donc stockage en base avec le type double, pas String

 

@systemz : tu n'indiques pas quelle erreur se produit, difficile de te dire quel est le problème, mais je sens bien un problème lié à la Locale => ton double formaté avec le DecimalFormat doit ressembler à 32,00 (avec une ',' pour le séparateur décimal), et le parseDouble attend un '.'

Ceci aurait sans doute mieux fonctionné (j'ai pas testé)

Double price = decim.parse(decim.format(amountDouble));
Lien vers le commentaire
Partager sur d’autres sites

Rejoignez la conversation

Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.

Invité
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...