Формат строки% со значимыми цифрами - PullRequest
5 голосов
/ 21 июня 2010

Я использую следующий код для отображения процента с использованием String.Format, но я также хочу ограничить количество значащих цифр до 2, кажется, что эти два значения не очень хорошо сочетаются друг с другом.Как я могу заставить их работать вместе правильно?

String.Format("% Length <= 0.5: {0:0%}", m_SelectedReport.m_QLT_1);

Так что я в идеале хочу что-то вроде этого

double d1 = 1234;
double d2 = 0.1234;

//Output of d1 -> 12
//Output of d2 -> 0.12

Ответы [ 4 ]

11 голосов
/ 21 июня 2010

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

Должен работать формат {0:0.00%}, обеспечивающий выходные данные, такие как 0,12, 1,23 и 12,34

3 голосов
/ 21 июня 2010
String test = String.Format("{0:F2}", 25);

Это создаст 25.00

Все параметры числового форматирования можно найти в MSDN.Я использую это все время.

http://msdn.microsoft.com/en-us/library/s8s7t687.aspx

2 голосов
/ 21 июня 2010
double d = 25.13645;
Console.WriteLine(d.ToString("##.00 %"));
0 голосов
/ 21 июня 2010

Этот пост в блоге - отличный маленький шпаргалка, которая будет полезна при попытке отформатировать строки во множество форматов.

удален

Редактировать

Ссылка была удалена, поскольку Google временно предупредил, что сайт (или связанный с ним сайт) может распространять вредоносное программное обеспечение. В настоящее время его нет в списке, и он больше не рассматривается как проблемный (хотя он был проблематичным, до сих пор сообщается). В Google "SteveX String Formatting" вы найдете результат поиска и можете просмотреть его по своему усмотрению.

...