37

我需要用起始零填充所有个位数。有人可以建议最好的方法吗?(例如 1 -> 01、2 -> 02 等)

4

5 回答 5

73
number.ToString().PadLeft(2, '0')
于 2009-01-28T21:31:03.523 回答
64

我会在数字上调用.ToString,提供一个需要两位数字的格式字符串,如下所示:

int number = 1;
string paddedNumber = number.ToString("00");

如果它是较大字符串的一部分,您可以在占位符中使用格式字符串:

string result = string.Format("{0:00} minutes remaining", number);
于 2009-01-28T21:31:07.377 回答
6

假设您只是输出这些值,而不是存储它们

int number = 1;
Console.Writeline("{0:00}", number);

这是.Net 支持的所有格式的有用资源。

于 2009-01-29T01:21:09.410 回答
3

我将添加此选项作为答案,因为我在这里看不到它,它可以用作替代方案。

在 VB.NET 中:

''2 zeroes left pad
Dim num As Integer = 1
Dim numStr2ch As String = Strings.Right("00" & num.ToString(), 2)

''4 zeroes left pad
Dim numStr4ch As String = Strings.Right("0000" & num.ToString(), 4)

''6 zeroes left pad
Dim numStr6ch As String = Strings.Right("000000" & num.ToString(), 6)
于 2014-08-20T21:05:06.337 回答
0
# In PowerShell:

$year = 2013
$month = 5
$day = 8

[string] $datestamp = [string]::Format("{0:d4}{1:d2}{2:d2}", $year, $month, $day)
Write-Host "Hurray, hurray, it's $datestamp!"
于 2013-09-10T05:15:41.810 回答