Как мне отформатировать десятичную C # для удаления лишних следующих 0? - PullRequest
46 голосов
/ 24 января 2011

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

string.Format("{0}", 1100M);
string.Format("{0}", 1100.1M);
string.Format("{0}", 1100.100M);
string.Format("{0}", 1100.1000M);

отображает:

1100
1100.1
1100.100
1100.1000

, но я хочу, чтобы оно было:

1100
1100.1
1100.1
1100.1

Для справки, вот другие вопросы, которые по сути являются дубликатами этого, которые я нашел благодаря ответам, приведенным здесь:

Ответы [ 11 ]

0 голосов
/ 11 декабря 2013
double a = 1100.00
double  b =1100.1
double  c = 1100.100
double  d =1100.1000

Remove last zero after point


string stra = a.toString("0.00").TrimEnd('0').TrimEnd('.');
string strb = b.toString("0.00").TrimEnd('0').TrimEnd('.');
string strc = c.toString("0.00").TrimEnd('0').TrimEnd('.');
string strd = d.toString("0.00").TrimEnd('0').TrimEnd('.');

Output

1100
1100.1
1100.1
1100.1
...