2009-07-20 18 views
52

En este fragmento de código C#, DateTime.Now.Month.ToString() devuelve 7 como salida.C#: DateTime.Now Formato de salida del mes

Me gustaría obtener 07 como valor de retorno.

¿Qué puedo hacer para agregar el cero inicial cuando el mes tiene solo 1 dígito?

Respuesta

95
DateTime.Now.Month.ToString("d2") 
45

formato del número entero con dos dígitos según lo sugerido por Mehrdad, o formatear el DateTime sí para darle un mes de dos dígitos:

DateTime.Now.ToString("MM") 
+0

Sí se trabajó .¡AGRADECE Mehrdad una d Jon – Shyju

10

Gracias, justo lo que necesitaba. Estoy usando selenio WebDriver para probar un sitio web y configurar varias cadenas Vars/etc al principio, esto hizo que fuera mucho más simple, el código Ahora estoy usando es:

/* Date strings */ 
    public static string TodayNum = DateTime.Now.ToString("dd");  // e.g 07 
    public static string ThisMonthNum = DateTime.Now.ToString("MM"); // e.g 03 
    public static string ThisMonthShort = DateTime.Now.ToString("MMM"); // e.g Mar 
    public static string ThisMonthLong = DateTime.Now.ToString("MMMM"); // e.g March 
    public static string ThisYearNum = DateTime.Now.ToString("yyyy"); // e.g 2014 
4

que puede usar: DateTime.Now.Month.ToString().PadLeft(2, '0');

volverá: 07

2

también puede convertir mes y día a número de dos dígitos siguiendo funciones también:

System.DateTime.Now.Month.ToString("00") //Give 01 for January 
System.DateTime.Now.Day.ToString("00")