можно преобразовать строковое значение в формате ГГГГММДД к человеку-дружественной строке следующим образом:Как я могу получить MediumDateString?
string beginDate = GetElement(3, fileBaseName);
string endDate = GetElement(4, fileBaseName);
beginDate = DateTime.ParseExact(beginDate,
"yyyyMMdd",
CultureInfo.InvariantCulture).ToShortDateString();
endDate = DateTime.ParseExact(endDate,
"yyyyMMdd",
CultureInfo.InvariantCulture).ToShortDateString();
return string.Format("{0} to {1}", beginDate, endDate);
Но использование ToShortDateString(), как указано выше, я получаю не-как-дружественны, как-нужный формат «4/1/2016 на 4/30/2016»
Когда я пытаюсь ToLongDateString(), он заходит слишком далеко в другом направлении, расширяя цифры в название месяцев (которые я хочу), но также обеспечивая длинную форму дня w еек, так что одни и те же значения отображаются как «пятницу, 01 апреля 2016 года в субботу, 30 апреля 2016»
То, что я действительно хочу для диапазона дат, который будет отображаться "апреля 1, 2016 30 апреля 2016 "(или" первый апреля 2016 года по 30 апреля 2016 «)
есть ли золотая середина между ToShortDateString() и ToLongDateStr ing(), который я могу использовать, или мне нужно «бросить свое», чтобы получить это?
Остерегайтесь ParseExact и преобразования даты в локальный календарь, а также убедитесь, что вы указать вид потом, если результат не переводятся, как UTC – Jay
Это «01» вместо «1» на дату, но достаточно близко для меня пока. –
@ B.ClayShannon: обновлено, используйте только один 'd' в этом случае. –