本文介绍了格式数字,如堆栈溢出(以 K 后缀四舍五入到千位)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何用 C# 格式化 SO 之类的数字?
How to format numbers like SO with C#?
10
, 500
, 5k
, 42k
, ...
10
, 500
, 5k
, 42k
, ...
推荐答案
像这样: (EDIT: Tested)
Like this: (EDIT: Tested)
static string FormatNumber(int num) {
if (num >= 100000)
return FormatNumber(num / 1000) + "K";
if (num >= 10000)
return (num / 1000D).ToString("0.#") + "K";
return num.ToString("#,0");
}
例子:
- 1 =>
1
- 23 =>
23
- 136 =>
136
- 6968 =>
6,968
- 23067 =>
23.1K
- 133031 =>
133K
请注意,这会给数字 >= 108 提供奇怪的值.
例如,12345678
变为 12.3KK
.
Note that this will give strange values for numbers >= 108.
For example, 12345678
becomes 12.3KK
.
这篇关于格式数字,如堆栈溢出(以 K 后缀四舍五入到千位)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!