У меня есть строка, которую я читаю из файла. Эта строка должна быть преобразована в BigDecimal. Как только он в большом десятичном исчислении, у меня есть что-то вроде этого: 000000000103000000
. Все 0 перед первым числом должны быть отформатированы, а последние два 00
должны быть .00
, как мне это сделать? например. (000000004711) -> (47.11)
Код:
BigDecimal amount;
String line = "30000000000000010300000000000000000000009876543210";
final NumberFormat formatter = NumberFormat.getInstance(Locale.FRANCE);/* , instead of . */
while((line = inputStream.readLine()) != null) {
amount = BigDecimal.valueOf(formatter.parse(
line.substring(2,24).replaceFirst("^0+(?!$)", "")).longValue());
}