На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Следующие правила действуют в данном разделе в дополнение к общим Правилам Форума
1. Здесь обсуждается Java, а не JavaScript! Огромная просьба, по вопросам, связанным с JavaScript, SSI и им подобным обращаться в раздел WWW Masters или, на крайний случай, в Многошум.
2. В случае, если у вас возникают сомнения, в каком разделе следует задать свой вопрос, помещайте его в корневую ветку форума Java. В случае необходимости, он будет перемещен модераторами (с сохранением ссылки в корневом разделе).

3. Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы. Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.
4. Не рекомендуется создавать несколько несвязанных вопросов в одной теме. Пожалуйста, создавайте по одной теме на вопрос.
Модераторы: dark_barker, wind
  
> парсинг чисел в разной локали
    Привет всем.
    Уже по-моему ни раз встречался с такой фиговиной
    Вот скармливаю парсеру строку в локали ru_RU:
    NumberFormat.getInstance().parseObject("19 700 200");
    Какого-то фига мне возвращается Long "19 700". Кто-нибудь знает, что за хренота такая?
    Спасибо заранее за ответ.

    Добавлено
    Какая-то фигня. Оказывается то, что даёт
    NumberFormat.getInstance().format(element);
    в качестве разделителя совсем даже не пробел. а что тогда? хрень какая-то...
      Цитата experimenter @
      NumberFormat.getInstance().format(element);
      в качестве разделителя совсем даже не пробел.

      У полученного таким образом формата, ЕМНИП, нет разделителя разрядов. Если вам нужен определённый формат, сконструируйте DecimalFormat с нужным шаблоном.
        Цитата wind @
        Цитата experimenter @
        NumberFormat.getInstance().format(element);
        в качестве разделителя совсем даже не пробел.

        У полученного таким образом формата, ЕМНИП, нет разделителя разрядов. Если вам нужен определённый формат, сконструируйте DecimalFormat с нужным шаблоном.

        Как нет? А что тогда в числе "19 700" между 19 и 700? :blink:
          Цитата experimenter @
          Вот скармливаю парсеру строку в локали ru_RU:
          NumberFormat.getInstance().parseObject("19 700 200");
          Какого-то фига мне возвращается Long "19 700". Кто-нибудь знает, что за хренота такая?

          У меня в русской локали возвращается 19. JDK 1.6.
            Цитата wind @
            Цитата experimenter @
            Вот скармливаю парсеру строку в локали ru_RU:
            NumberFormat.getInstance().parseObject("19 700 200");
            Какого-то фига мне возвращается Long "19 700". Кто-нибудь знает, что за хренота такая?

            У меня в русской локали возвращается 19. JDK 1.6.

            Да, у меня тоже 1.6. Только уровень компиляции поставлен 1.5. Надо попробовать поставить 6-ой и посмотреть, что там выйдёт.
            1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0227 ]   [ 14 queries used ]   [ Generated: 18.05.24, 13:36 GMT ]