2013-10-24 2 views
1

Вот моя проблема.строка в двойном пропуске последней десятичной, если она равна нулю?

Мне нужно преобразовать слово «5.550» (строка), чтобы удвоить, как 5.550 , что является двойным с 3 десятичными цифрами. Я пробовал IFormatProvider во время разбора, но без use.it продолжает пропустить последний ноль(). Пожалуйста, совет.

Спасибо, Kumar M A

+1

Нет такой вещи, как «сохранение нуля на двойном», когда это конечный ноль в конце десятичной точки. Значение равно 5.55. Вы можете отформатировать его до строки с дополнительным нулем, но значение ACTUAL по-прежнему равно 5.55 –

+0

, как вы даже _know_, что он пропускает последний ноль? Если это напечатано на экране, вот где вы можете отформатировать нулевой нуль ... Можете ли вы поделиться своим кодом, демонстрирующим вашу проблему? –

+0

Если вы пытаетесь получить двойной, который равен 5.550, вы не сможете, поскольку последний ноль просто бессмыслен (также он не может быть представлен в двоичном коде), также я не вижу необходимости делать это, опять же, это ничего не значит, если вы хотите распечатать его таким образом, вы можете использовать форматирование строк, но в противном случае нет смысла. –

ответ

2

double не держит незначительные цифры - нет никакой разницы между 1,5 и 1.50000, насколько double обеспокоен.

Если вы хотите сохранить незначительные цифры, используйте вместо этого decimal. В любом случае, это может быть более подходящим для вас, в зависимости от вашего точного контекста. (У нас очень мало контекста, чтобы продолжать здесь ...)

Смежные вопросы