Ich habe ein Double: 5096,54 Ich muss es formatieren als: 5.096,54 (europäisches Format für Währung) Ich versuche mit diesem Code ohne Erfolg.Wie man eine Nummer für europäische Sprache formatiert
Locale l = Locale.getDefault(); // ("fr" in my case)
// Get the formatter for the specific locale
NumberFormat formatter = NumberFormat.getNumberInstance(l);
// Always 2 decimals
formatter.setMinimumFractionDigits(2);
formatter.setMaximumFractionDigits(2);
// Format
return formatter.format(d);
Ausgang: 5 096,54 wenn ich erwarte 5.096,54 Jede Idee, warum es nicht funktioniert?
meisten europäischen Formate Raum als Tausendertrennzeichen und Koma als Dezimaltrennzeichen ... aber Sie können versuchen, Italienisch oder Norwegisch Gebietsschema – Selvin
http://ideone.com/IHc6ID https://docs.oracle.com/cd/E19455-01/806-0169/overview- 9/index.html – Selvin
Vielen Dank für die Hilfe, die Verwirrung kommt von der Tatsache, dass das Gebietsschema "fr" FRANZÖSISCH ist (und die Ausgabe ist e. g: 5 096,54), aber in Belgien, französisch soll es 5.096,54 sein. Also, mein Locale auf 'Locale l = new Locale ("fr", "BE");' habe mein Problem behoben – estoke