可能重复:
Is there an easy way in .NET to get “st”, “nd”, “rd” and “th” endings for numbers?
C#中是否有任何内容可以将数字格式化为排名位置?
“排名位置”是[“st”,“nd”,“rd”,“th”的意思之一,例如:(1st,2nd,3rd,4th)。
我知道为此编写一个扩展名很容易,我只是想知道该语言中是否已有某些内容可以满足。
干杯
答案 0 :(得分:0)
不,没有为此目的内置任何东西。不确定它是否相关,但如果跨越语言/文化,则考虑文化差异。
答案 1 :(得分:-2)
我已经纠正过了。请参阅上述评论中所述的重复问题。
<击> 不是开箱即用的;但是,正如您所提到的,扩展非常简单。
public static string ConvertToRankingPosition(this int value)
{
var digit = value % 10;
return value != 11 && digit == 1 : value + "st" :
value != 12 && digit == 2 : value + "nd" :
value != 13 && digit == 3 : value + "rd" :
value + "th"
}
击> <击> 撞击>