2011-02-21 3 views
5

Можно ли указать параметры string.Format() для добавления символа процента без изменения значения числа?Отображение числа с плавающей запятой в процентах без изменения значения

Пример:
У нас есть число 44.36, и мы хотим показать в сетке и вывода в Excel как . Разделение значения на 100, а затем применение формата "P" - это не вариант. В этом случае изменение значений не может быть выполнено, мы должны сделать это, только изменив значение DisplayFormat. Использование string.Format("{0}%", valueParam) также не является вариантом.

ответ

11

Укажите произвольный формат. Вам нужно будет избежать знака процента '%' с литеральной обратной косой чертой '\\', чтобы он не переинтерпретировал значение в процентах.

var number = 44.36m; 
var formatted = number.ToString("0.##\\%"); // "44.36%" 
// format string @"0.##\%" works too 

// using String.Format() 
var sformatted = String.Format("{0:0.##\\%}", number); // "44.36%" 
Смежные вопросы