我需要将十进制数字a转换为字符串b,如下所示:
'.'
字符。例如:
如何使用1个命令执行此操作?
(与1相同的问题)
decimal a = 12;
var b = a.ToString("N1"); // 12.0
a = 1.2m;
b = a.ToString(); // 1.2
a = 101m;
b = a.ToString("N10"); // 101.0000000000
a = 1.234m;
b = a.ToString("N10"); // 1.2340000000
对于问题的第二部分-您希望总长度为10,则:
decimal a = 1.234567891m;
int numberOfDigits = ((int)a).ToString().Length;
var b = a.ToString($"N{9 - numberOfDigits}"); //1.23456789
//Or before C# 6.0
var b = a.ToString("N" + (9 - numberOfDigits)); //1.23456789
基本上((int)number).ToString().Length
为您提供.
(之前的位数)(转换为int会删除分数),然后从.
(之后的位数)中减少位数(对于小数点本身为-1)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句