Форматирование decimal
От: SergASh  
Дата: 28.09.09 13:46
Оценка:
Привет всем!

Есть значение типа decimal, надо получить его строковое представление с точностью до двух знаков после запятой, но при этом незначащие нули должны быть отброшены. То есть
1.234 => "1.23"
1.230 => "1.23"
1.200 => "1.2"
1.000 => "1"

Есть ли стандартный способ это сделать на C#?

Спасибо
Re: Форматирование decimal
От: Qbit86 Кипр
Дата: 28.09.09 14:02
Оценка: 6 (1)
Здравствуйте, SergASh, Вы писали:

SAS>Есть ли стандартный способ это сделать на C#?


var numbers = new List<decimal> { 1.234m, 1.230m, 1.200m, 1.000m, 1.2345m };
numbers.ForEach(d => Console.WriteLine("{0:0.0##}", d));


1.234
1.23
1.2
1.0
1.235


Имхо, «1.0» смотрится лучше, чем просто «1». Но, если не нравится, укажите формат "{0:0.###}".
Глаза у меня добрые, но рубашка — смирительная!
Re[2]: Форматирование decimal
От: Qbit86 Кипр
Дата: 28.09.09 14:05
Оценка:
Здравствуйте, Qbit86, Вы писали:

Q>
numbers.ForEach(d => Console.WriteLine("{0:0.0##}", d));

Ой, это с точностью до трёх знаков, для двух нужен формат "{0:0.0#}" или "{0:0.##}".
Глаза у меня добрые, но рубашка — смирительная!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.