Jump to content

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...

Link to comment
Share on other 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 ?

Link to comment
Share on other 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));
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...