我刚刚接管了一些代码,并且我看到这用了很多,看起来采用整数并创建了一个看起来像“01”,“ 02" 等使用string.Format格式化一个字符串(“{0:00}”
什么我不知道的是这里使用的约定。为什么格式{0:00}
,而不是{00}
?
string.Format("{0:00}", int.Parse(testVal) + 1);
我刚刚接管了一些代码,并且我看到这用了很多,看起来采用整数并创建了一个看起来像“01”,“ 02" 等使用string.Format格式化一个字符串(“{0:00}”
什么我不知道的是这里使用的约定。为什么格式{0:00}
,而不是{00}
?
string.Format("{0:00}", int.Parse(testVal) + 1);
第一0
是占位符,意味着第一个参数。 00
是一种实际的格式。
例如,它可能是这样的:
var result = string.Format("{0:00} - {1:00}", 5, 6);
result
将05 - 06
。所以前面的0表示取第一个参数5,而1表示取参数6.
格式为{index[,length][:formatString]}
。看看String.Format Method。
格式字符串{0:00}
中的前导0
指示此格式化程序规范的索引。对于String.Format
MSDN文档有此说关于指数...
指数:在对象的参数列表从零开始的位置进行格式化。
以下行的第一0
是你的论点
string.Format("{0:00}", int.Parse(testVal) + 1);
(int.Parse(testVal) + 1).ToString ("00")
将产生同样的事情的索引。
string.Format
支持多重替换这样的:
string.Format("{0:00} + 1 = {1:00}", int.Parse(testVal), int.Parse(testVal) + 1);
非常感谢您的帮助 – 2011-06-15 03:08:47
@大卫H:如果这回答了你的问题,标志着一定要标记是公认的答案。 – 2011-06-15 03:14:23
刚刚标记为接受:-) – 2011-06-15 03:29:42