我正在尝试打印数字,如0101 .... 1231,其中前两位是月,后两位是天。我这样做了:
int d, m;
for (m = 01; m <= 12; m++)
for (d = 01; d <= 31; d++)
Console.WriteLine(loc + m.ToString() + d.ToString());
// Directory.CreateDirectory(loc + m.ToString() + d.ToString());
这是打印数字,如11而不是0101.如何将整数1到9打印为01-09?
答案 0 :(得分:5)
Console.WriteLine(loc + m.ToString("D2") + d.ToString("D2"));
请参阅Standard Numeric Format Strings [MSDN]以供参考。
虽然:
var date = new DateTime(2011, 1, 1);
while (date < new DateTime(2012, 1, 1))
{
Console.WriteLine(loc + date.ToString("MMdd"));
// ^ MMdd stands for Month-Month, day-day (indicating you want them both displayed in a double digit format)
// (uppercase M is used because lowercase m is already taken, it stands for minutes)
date = date.AddDays(1);
}
可以让您更方便地控制输出日期格式,并帮助您避免打印出不存在的日期(例如4月31日或2月30日)
答案 1 :(得分:2)
ToString("D2")
这将为您提供两位数的整数。更改数字以获得更多数字。
答案 2 :(得分:2)
使用String.Format()
方法。
Console.WriteLine(string.Format("{0:00}{1:00}", m, d));