2017-12-21 8 views
1

から最初の3文字を取得します。私は、日時をしました:のDayOfWeek

私は DayOfWeekたとえばから最初の三文字だけを分割することができますどのように
DateTime dt = new DateTime(2003, 5, 1); 
dt.DayOfWeek // returns Thursday 

Thu?あなたはそれが異文化に動作するために意味場合

+0

https://docs.microsoft.com #-ddd-custom-format-specifier – Caramiriel

+1

'var shortDayName = dt.DayOfWeek.Substring(0,3)'/en-us/dotnet/standard/base-types /カスタム日付時刻形式の文字列 –

+1

または 'dt.ToString(" ddd ");'もしあなたがI18Nを必要とし、誰もが正確に3文字の長さの曜日名を略しているわけではないことに気が付いたら。 –

答えて

5

は、その後、あなたの最善の策は、おそらくです:cultureCultureInfoある

var abbr = culture.DateTimeFormat.GetAbbreviatedDayName(dayOfWeek); 

、例えば英語の文化で

var culture = CultureInfo.CurrentCulture; 

、この

Sun 
Mon 
Tue 
Wed 
Thu 
Fri 
Sat 
+0

月間同じ場合はどうすればいいですか? – AsifAli72090

+4

@ Asif.Ali then: 'GetAbbreviatedMonthName' –

+0

日時フォーマットが' 12/21/2017'の場合、どこに置くべきですか? – AsifAli72090

2

Marcs approa chはここで最高です。しかし、私はenum - 値の最初の3つの文字を取得する方法を、より一般的な方法であなたの質問を理解していれば、あなたがenum.ToStringを使用する場合は、文字列のメソッドを使用することができます。

DateTime dt = new DateTime(2003, 5, 1); 
string dow = dt.DayOfWeek.ToString(); 
dow = dow.Length > 3 ? dow.Remove(3) : dow; 
関連する問題