@dlysenko1311

Как из строки получить переменную с типом дата?

У меня есть array значений, где хранятся строки в таком формате "2022.12.11"

Как на основе этой строки "2022.12.11" мне получить переменную с типом datetime где будет гранится дата в формате "2022-12-11 00:00:00.000"

И еще проблема в том, что иногда встречаются ошибки в виде таких строк "0222.12.08"

foreach (var i in jarray)
    {
        if ((string)i["EndEducation"] != "")
        {
            Output0Buffer.EndEducation = (DateTime)i["EndEducation"]; # значение с типом datetime я отдаю в аутпут скрипта
        }
      
    }
  • Вопрос задан
  • 72 просмотра
Решения вопроса 2
NikFaraday
@NikFaraday
Student full-stack Developer
dlysenko1311 , Тогда, я так понимаю, вам нужно сделать что-то типа такого
i["StartEducation"] = (string)DateTime.Parse(mystr).ToString("yyyy-MM-dd");
Ответ написан
Комментировать

0222.12.08

Ну это придётся как-то самостоятельно обходить.
Можно например, если год указан меньше 1000, но больше 200, то отнять 200 и прибавить 2000

А спарсить можно методом
var dt = DateTime.ParseExact("yyyy.MM.dd");

А чтобы потом отформатировать дату в строку в нужном формате:
var str = dt.ToString("u");
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы