如何在 C# 中格式化数字,使 12523.57 变为“12K”,2323542.32 变为“2M”等?
我不知道如何附加正确的数字缩写(K、M 等)并显示适当的数字?
所以,
1000 = 1K
2123.32 = 2K
30040 = 30k
2000000 = 2M
C# 中是否有内置的方法来执行此操作?
如何在 C# 中格式化数字,使 12523.57 变为“12K”,2323542.32 变为“2M”等?
我不知道如何附加正确的数字缩写(K、M 等)并显示适当的数字?
所以,
1000 = 1K
2123.32 = 2K
30040 = 30k
2000000 = 2M
C# 中是否有内置的方法来执行此操作?
我不认为这是 C#/.Net 中的标准功能,但自己做这件事并不难。在伪代码中它会是这样的:
if (number>1000000)
string = floor(number/1000000).ToString() + "M";
else if (number > 1000)
string = floor(number/1000).ToString() + "K";
else
string = number.ToString();
如果您不想截断,而是舍入,请使用 round 而不是 floor。
没有内置的方式,你必须滚动你自己的例程,类似于这样:
public string ConvertNumber(int num)
{
if (num>= 1000)
return string.Concat(num/ 1000, "k");
else
return num.ToString();
}