将string格式化为3位数字
而不是这样做,我想使用string.format()
来完成相同的结果:
if (myString.Length < 3) { myString = "00" + 3; }
如果只是格式化数字,则可以直接提供适当的自定义数字格式以使其成为3位数string:
myString = 3.ToString("000");
或者,也可以使用标准的D格式string :
myString = 3.ToString("D3");
这就是所谓的填充 :
myString.PadLeft(3, '0')
其他方式
string.Format(“{0:000}”,myString);
“如何:使用前导零填充数字” http://msdn.microsoft.com/en-us/library/dd260048.aspx
它是否必须是String.Format
?
这看起来像一个String.Padleft
工作
myString=myString.PadLeft(3, '0');
或者,如果你直接从int转换:
myInt.toString("D3");
你也可以这样做:string.Format(“{0:D3},3);
(不能评论,有足够的声誉,让我补充一个旁注)
以防万一您的输出需要固定长度的3位,即数量运行到1000或更多(保留的固定长度),不要忘记添加mod 1000 。
yourNumber=1001; yourString= yourNumber.ToString("D3"); // "1001" yourString= (yourNumber%1000).ToString("D3"); // "001" truncated to 3-digit as expected
在Fiddler上的Trail示例https://dotnetfiddle.net/qLrePt