Ответ 1
Вы можете использовать DateTimeFormatInfo.AbbreviatedDayNames
. Например:
string[] names = culture.DateTimeFormat.AbbreviatedDayNames;
string monday = names[(int) DayOfWeek.Monday];
Мне было интересно, как написать метод, который вернет мне строку, которая будет содержать короткое имя дня, например:
public static string GetShortDayName(DayOfWeek day)
теперь, если я вызываю:
string monday = GetShortDayName(DayOfWeek.Monday);
Я вернусь "mo", если культура en, или "lu", если культура, например, это.
Вы можете использовать DateTimeFormatInfo.AbbreviatedDayNames
. Например:
string[] names = culture.DateTimeFormat.AbbreviatedDayNames;
string monday = names[(int) DayOfWeek.Monday];
Ближе всего вы можете использовать пользовательскую строку формата даты и времени - в частности ddd
.
Это вернет аббревиатуру - вы можете подстроить результат, чтобы получить до 2 символов.
Вам нужно будет использовать DateTime
с днем, соответствующим желаемому дню недели.
DateTimeFormatInfo.ShortestDayNames
Получает или задает массив строк из кратчайших уникальных сокращенных имен дней, связанных с текущим объектом DateTimeFormatInfo.
попробовать:
CultureInfo english = new CultureInfo("en-US");
string sunday = (english.DateTimeFormat.DayNames[(int)DayOfWeek.Sunday]).Substring(0, 2);
Или:
dateTimeFormats = new CultureInfo("en-US").DateTimeFormat;
string sunday = (dateValue.ToString("dddd", dateTimeFormats)).Substring(0, 2);