动态保留有效位数 : str.ToString("0.###") (保留几位就几个“#”)
static void Main(string[] args)
{
decimal a = 6.157800M;
decimal b = 6.12M;
decimal c = 6.1570M;
// 保留两位小数有效小数
var s1 = a.ToString("0.##");
// 保留三位小数有效小数
var s2 = b.ToString("0.###");
// 保留四位小数有效小数
var s3 = c.ToString("0.####");
Console.WriteLine($"s1={s1}");
Console.WriteLine($"s2={s2}");
Console.WriteLine($"s3={s3}");
Console.ReadKey();
}
运行结果:

