2009-07-20 8 views
52

In questo frammento di codice C#, DateTime.Now.Month.ToString() restituisce 7 come output.C#: DateTime.Now Formato di output mese

Mi piacerebbe ottenere 07 come valore di ritorno.

Cosa posso fare per aggiungere lo zero iniziale quando il mese ha solo 1 cifra?

risposta

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

entrambi i formati il ​​numero intero a due cifre come suggerito da Mehrdad, o formattare la DateTime sé per darvi un mese a due cifre:

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

Sì Ha funzionato Ringraziamenti Mehrdad un d Jon – Shyju

10

Grazie, proprio quello che mi serviva. Sto utilizzando Selenio WebDriver per testare un sito web e impostare varie Vars/corde ecc all'inizio, questo ha reso molto più semplice, il codice Ora sto utilizzando è:

/* 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

si potrebbe usare: DateTime.Now.Month.ToString().PadLeft(2, '0');

ritornerà: 07

2

È inoltre possibile convertire mese e giorno a due cifre per le seguenti funzioni troppo:

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