In my Android app I've got an EditText from which I take a number, and convert that to a BigDecimal, and from there to a local Currency formatting:
String s = "100000";
Locale dutch = new Locale("nl", "NL");
NumberFormat numberFormatDutch = NumberFormat.getCurrencyInstance(dutch);
Log.e(this, "Currency Format: "+ numberFormatDutch.format(new BigDecimal(s.toString())));
This prints out €100.000,00 like expected. I now however, want to convert this back into a BigDecimal.
Is there a way that I can convert a locally formatted currency string back to a BigDecimal?
String s = "100000";
Locale dutch = new Locale("nl", "NL");
NumberFormat numberFormatDutch = NumberFormat.getCurrencyInstance(dutch);
String c = numberFormatDutch.format(new BigDecimal(s.toString()));
System.out.println("Currency Format: "+ c);
try {
Number d = numberFormatDutch.parse(c);
BigDecimal bd = new BigDecimal(d.toString());
System.out.println(bd);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Currency Format: € 100.000,00
100000
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With