Как я могу разбирать строку в BigDecimal?

У меня есть эта строка: 10,692,467,440,017.120 (это сумма).

Я хочу разобрать его на BigDecimal. Проблема в том, что я пробовал как DecimalFormat, так и NumbeFormat напрасно. Любая помощь?

Попробуй это

// Create a DecimalFormat that fits your requirements DecimalFormatSymbols symbols = new DecimalFormatSymbols(); symbols.setGroupingSeparator(','); symbols.setDecimalSeparator('.'); String pattern = "#,##0.0#"; DecimalFormat decimalFormat = new DecimalFormat(pattern, symbols); decimalFormat.setParseBigDecimal(true); // parse the string BigDecimal bigDecimal = (BigDecimal) decimalFormat.parse("10,692,467,440,017.120"); System.out.println(bigDecimal); 

Если вы создаете приложение с поддержкой I18N, вы должны использовать DecimalFormatSymbols(Locale)

Также имейте в виду, что decimalFormat.parse может ParseException поэтому вам нужно обработать его (с помощью try / catch) или бросить его и позволить другой части вашей программы справиться с этим

Попробуй это

  String str="10,692,467,440,017.120".replaceAll(",",""); BigDecimal bd=new BigDecimal(str); 

BigDecimal предлагает конструктор строк. Вам нужно будет удалить все запятые из числа, через регулярное выражение или String filteredString=inString.replaceAll(",","") .

Затем вы просто вызываете BigDecimal myBigD=new BigDecimal(filteredString);

Вы также можете создать NumberFormat и вызвать setParseBigDecimal(true) . Затем parse( вы получите BigDecimal, не беспокоясь о форматировании вручную.

Попробуйте создать правильный конструктор http://docs.oracle.com/javase/7/docs/api/java/math/BigDecimal.html#BigDecimal(java.lang.String)

Вы можете напрямую инициировать BigDecimal с помощью String;)

Пример:

 BigDecimal bigDecimalValue= new BigDecimal("0.5"); 
  • Используйте комбинатор парсера Scala для parsingа CSV-файлов
  • чтение файла по строкам в go
  • Как быстро анализировать пространственно разделенные поплавки на C ++?
  • Как разобрать JSON в Android?
  • Используемый парсер Улица Адрес, Город, Штат, Почтовый индекс из строки
  • Casting vs Преобразование объекта toString, когда объект действительно является строкой
  • Java отрицательный int для шестнадцатеричного и обратного сбоев
  • Есть ли на C # String Tokenizer, например, Java?
  • Каков наилучший способ parsingа форматированного файла с фиксированной шириной в Java?
  • Есть ли Java XML API, который может анализировать документ без разрешения объектов символов?
  • Удалить расширение файла из строки имени файла
  • Interesting Posts

    Swing GroupLayout: изменение размеров и ограничение размеров компонентов

    Vim: Как правильно указывать html-код в файле php?

    Как получить различные фоновые изображения на моих двойных мониторах?

    Каталог .NET по умолчанию.

    Как получить значение другого компонента в пользовательском валидаторе?

    Может ли (a == 1 && a == 2 && a == 3) когда-либо оценивать значение true?

    Выберите случайную строку из таблицы sqlite

    Песочница против вредоносного кода в приложении Java

    Как обрабатывать MaxUploadSizeExceededException

    Отключение изображений в Chrome / Firefox (т. Е. Использование «текстового режима»)

    Использовать кнопочную кнопку Android 4.0

    CSS: установка ширины / высоты в процентах минус пиксели

    Как контролировать программы и службы при запуске Windows?

    Как смотреть полноэкранный режим Youtube на одном мониторе двух мониторов?

    не удалось запустить COM-объект типа «microsoft.Office.Interop.Excel.ApplicationClass» в «microsoft.Office.Interop.Excel.Application»

    Давайте будем гением компьютера.