Это основной вопрос, который новые разработчики не узнали о разнице между DateTime
и его текстовым представлением (он же string
).Не волнуйтесь, у всех нас была одна и та же проблема.
A DateTime
не имеет любого формата.У него просто есть значения даты и времени.И он вычисляется как long
, называемое Ticks
.
С другой стороны, то, что вы хотите, то есть 25 Fév 2019
, представляет собой текстовое представление из этого, что означает, что это string
.Вы не можете иметь «25 Фев 2019» как DateTime
, но вы можете иметь его как string
.
Допустим, у вас есть "25/02/2019"
как string
, и вы хотитеразобрать его до DateTime
.В таком случае вы можете использовать DateTime.ParseExact
, как вы это сделали.
DateTime myDateTime = DateTime.ParseExact("25/02/2019", "dd/MM/yyyy",
CultureInfo.InvariantCulture);
Теперь у вас есть DateTime
, и вы можете получить его текстовое (он же строка) представление с.ToString()
метод и французская (fr-FR
) культура.
string myString = myDateTime.ToString("dd MMM yyyy", new CultureInfo("fr-FR"));
Кстати, в fr-FR
культуре сокращенное название месяца févr.
, а не Fév
.Насколько я вижу, ни одна из fr
, fr-FR
или fr-CA
не имеет этой строки.Чтобы получить то, что вы хотите, вы должны удалить последние 2 символа и сделать первый символ заглавным.