Вывести числа в определенном формате - C#
Формулировка задачи:
Добрый день, есть следующая задача:
есть числа в следующем формате: 98764,81
необходимо выводить числа в следующем формате: 98 764-81
Числа могут быть любые, любой длины и разрядности. Суть одна: тысячи отделяются пробелами, а сотые знаком тире.
Я делаю сейчас это следующим образом. Но дико не нравится, ибо не красиво.
private string SummStr(string summ)
{
summ = Double.Parse(summ.Replace(",", "").Replace(".", "")).ToString("000 000 000 000-00");
int k = 0;
for (int i = 0; i < summ.Length; i++)
{
if (summ[i] == '0' || summ[i] == ' ') k++;
else break;
}
return summ.Remove(0, k);
}Решение задачи: «Вывести числа в определенном формате»
textual
Листинг программы
private string SummStr(string summ)
{
string formatString = "### ### ### ##0.00";
NumberFormatInfo nfi = new NumberFormatInfo();
nfi.NumberDecimalDigits = 2;
nfi.NumberDecimalSeparator = "-";
return Double.Parse(summ).ToString(formatString, nfi);
}