在.Net中填充一个以零开头的数字

Posted

技术标签:

【中文标题】在.Net中填充一个以零开头的数字【英文标题】:Pad a number with starting zero in .Net 【发布时间】:2010-10-04 02:51:24 【问题描述】:

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

【问题讨论】:

你是如何输出这些的?例如,如果您要将它们绑定到 ASP.NET 中的控件,则可能有一种更简单的方法可以在绑定它们时应用格式字符串。 【参考方案1】:
number.ToString().PadLeft(2, '0')

【讨论】:

赞成,因为这个解决方案是自我记录的——它的意图比格式提供者(“00”)更清晰。【参考方案2】:

我会在号码上拨打.ToString,提供需要两位数的format string,如下所示:

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

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

string result = string.Format("0:00 minutes remaining", number);

【讨论】:

【参考方案3】:

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

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

这是 .Net 支持的所有格式的 useful resource。

【讨论】:

【参考方案4】:
# In PowerShell:

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

[string] $datestamp = [string]::Format("0:d41:d22:d2", $year, $month, $day)
Write-Host "Hurray, hurray, it's $datestamp!"

【讨论】:

程序员问vb.net 为什么给他powershell【参考方案5】:

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

在 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)

【讨论】:

以上是关于在.Net中填充一个以零开头的数字的主要内容,如果未能解决你的问题,请参考以下文章

66. 加一

66. 加一

66. 加一

66.加一

66. 加一

66.加一