使用string.Format("{0:00}")格式化字符串

24

我刚接手一些代码,我发现这个用法很多。它似乎将整数转换为类似于“01”,“02”等的字符串。

我不确定这里使用的约定是什么。为什么格式是{0:00}而不是{00}

string.Format("{0:00}", int.Parse(testVal) + 1);
3个回答

48

第一个占位符为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

4
以下行中的第一个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); 

2
格式字符串中的前导0表示此格式化程序规范的索引。MSDN文档对于String.Format的索引有如下说明...

index: 要格式化的对象在参数列表中的从零开始的位置。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接