powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Doube parse: хитрый формат
8 сообщений из 8, страница 1 из 1
Doube parse: хитрый формат
    #37805453
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Встретил third party логи, где double выражения имеют следующий формат:

1,2 = 1.2
1,000.01 = 1000.01

То есть
- если значение менее тысячи, то запятая означает отделение дробной части от целой
- если значение более тысячи, то запятая для красоты, а отделяет дробную часть от целой точка.

Есть ли название у подобного формата и соответственно штатные средства для преобразования в java?
...
Рейтинг: 0 / 0
Doube parse: хитрый формат
    #37805488
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну то есть я понимаю, что 1,001 - это тысяча и 1 или 1 и 1 тысячная. Но черт его знает..вдруг кто грабли любит.
...
Рейтинг: 0 / 0
Doube parse: хитрый формат
    #37805755
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запятая (в данном случае) это скорее всего разделитель классов (тысячи, миллионы e.t.c) её надо просто удалять и всё.
Почему 1,2 = 1.2 я не знаю. Возможно ты ошибся в интерпретации второго примера и реально это 1,000.01 = 1.00001
то тогда разделитель классов это точка и классы делятся еще и в направлении десятичных долей.
...
Рейтинг: 0 / 0
Doube parse: хитрый формат
    #37805964
Leonidv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОзверинЕсть ли название у подобного формата и соответственно штатные средства для преобразования в java?
Скорее всего используются различные способы форматирования. Например, в одном месте сделали через String.format, а в другом просто "" + double. Тогда в зависимост от настроек локалей вывод может сильно отличаться.
...
Рейтинг: 0 / 0
Doube parse: хитрый формат
    #37806070
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Видимо, удобней пользоваться DecimalFormat - в нем можно установить и десятичный разделитель, и групповой. Для твоего случая:
Код: java
1.
2.
3.
4.
5.
6.
7.
String strNumber = "1,000.01";
DecimalFormat df = new DecimalFormat(); 
DecimalFormatSymbols symbols = new DecimalFormatSymbols(); 
symbols.setDecimalSeparator('.'); 
symbols.setGroupingSeparator(','); 
df.setDecimalFormatSymbols(symbols); 
Number number = df.parse(strNumber);
...
Рейтинг: 0 / 0
Doube parse: хитрый формат
    #37806163
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruckВидимо, удобней пользоваться DecimalFormat - в нем можно установить и десятичный разделитель, и групповой. Для твоего случая:
для его случая 1,2 легким движением руки превратится в 12
...
Рейтинг: 0 / 0
Doube parse: хитрый формат
    #37806279
Озверин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЗапятая (в данном случае) это скорее всего разделитель классов (тысячи, миллионы e.t.c) её надо просто удалять и всё.
Почему 1,2 = 1.2 я не знаю. Возможно ты ошибся в интерпретации второго примера и реально это 1,000.01 = 1.00001
то тогда разделитель классов это точка и классы делятся еще и в направлении десятичных долей.

В том и дело, что может служить разделителем на тысячи, а может разделителем - на целую дробную. Сам удивился
Мало ли, кто вдруг встречал такое чудо юдо и мне оно зря кажется некорректным ;)
...
Рейтинг: 0 / 0
Doube parse: хитрый формат
    #37810779
Valery Shiskin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Озверин,

Это Ваш случай, если Вы не изменили в языковых настройках OS символ разделения целой и дробной части. По умолчанию, для русского - запятая.

Код: java
1.
2.
3.
4.
        double d = 1.2;
        NumberFormat nf = NumberFormat.getInstance();
        String s = nf.format(d);
        System.out.println(s + " = " + d);
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Doube parse: хитрый формат
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]