该页面为您提供了所有自定义数字格式设置规则的完整列表:
http://msdn.microsoft.com/zh-
CN/library/0c899ak8.aspx
如您所见,关于序号的内容不多,因此无法使用String.Format来完成。然而,编写一个函数来实现它并不难。
public static string AddOrdinal(int num){ if( num <= 0 ) return num.ToString(); switch(num % 100) { case 11: case 12: case 13: return num + "th"; } switch(num % 10) { case 1: return num + "st"; case 2: return num + "nd"; case 3: return num + "rd"; default: return num + "th"; }}
更新:从技术上讲,对于<= 0而言,普通字符不存在,因此我更新了上面的代码。还删除了多余的
ToString()方法。
另请注意,这不是国际化的。我不知道其他语言的序号是什么样子。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)