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
Run Code Online (Sandbox Code Playgroud)
对于问题的第二部分 - 您希望总长度为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
Run Code Online (Sandbox Code Playgroud)
基本上((int)number).ToString().Length给你之前的数字量.(转换为int将删除分数)然后从数字后面的位数减少.(和小数点本身的-1)
| 归档时间: |
|
| 查看次数: |
17057 次 |
| 最近记录: |