我想将数字转换为字符串,但数字格式为10位数。例如,如果数字为5,则字符串应为“0000000005”。我检查了字符串的格式:
http://msdn.microsoft.com/en-us/library/0c899ak8(v=vs.110).aspx
但是没有任何格式可以指定位数。
实际上“0”占位符可以工作,但实际上我需要100个位置,所以我不打算使用“0”占位符。
答案 0 :(得分:1)
您可以使用ToString formatting Dn输出前导零:
var d = 5;
var s2 = d.ToString("D2");
var s10 = d.ToString("D10");
Console.WriteLine(s2);
Console.WriteLine(s10);
输出结果为:
05
0000000005
答案 1 :(得分:1)
通常,standard numeric format strings的D
说明符足够精确,可以格式化具有所需前导零数的数字。
但是它会在99处停止,如果你真的需要100个前导零,你需要求助于旧的可靠的字符串连接和右截断方法
int number = 5;
string leadingZero = new string ('0', 100) + number.ToString();
string result = leadingZero.Substring(leadingZero.Length - 100);
答案 2 :(得分:0)
此页面可帮助您找到所需的解决方案:http://msdn.microsoft.com/en-us/library/dd260048(v=vs.110).aspx