在.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中填充一个以零开头的数字的主要内容,如果未能解决你的问题,请参考以下文章