2015-10-12 19 views
1

我試圖簡單地得到一週中某天的3字母首字母縮寫詞。C#ToString(「ddd」)對DayofWeek縮寫爲3個字符不起作用

星期一= MON 星期二= TUE 等等。

我試過但我得到一個錯誤。

string wsDoW = DateTime.Today.DayOfWeek.ToString("ddd"); 

圍繞它的唯一辦法對我來說,這是... ...

string wsDoW = DateTime.Today.DayOfWeek.ToString().ToUpper().Substring(0,3); 

的錯誤是...

格式字符串只能是 「G」,「G 「,」X「,」x「,」F「,」f「,」D「或」d「。

發生了什麼事?

回答

4

刪除DayOfWeek部分和您的format specifier將工作得很好。

string wsDoW = DateTime.Today.ToString("ddd"); 

這是由於System.DateTimeSystem.DayOfWeek之間的ToString()執行的差異。

DateTime類中的ToString實現結束了here,其中它正在測試更多的格式說明符。

ToString實施被稱爲上DayOfWeek是在Enum類,它只是一個few format specifiers檢查,並拋出一個異常,如果它不是其中之一。

+0

太棒了!謝謝 – Fandango68

+0

@ Fernando68不客氣! –

+0

@sudheeshix我欣賞添加更多細節的編輯,但您只能對'DateTime'的實例調用'ToString()'...而不是'DateTime'類本身。 –