Получение исключения при преобразовании строки даты и времени формата utc в дату и время

#.net #string #date #time #utc

#.net #строка #Дата #время #utc

Вопрос:

Получение исключения при преобразовании строки даты и времени формата UTC в дату и время

Исключение во время выполнения (строка 16): строка не была распознана как допустимая дата и время.

Трассировка стека:

[Система.FormatException: строка не была распознана как допустимая дата и время.] в системе.DateTimeParse.Синтаксический анализ (String s, String format, DateTimeFormatInfo dtfi, стиль DateTimeStyles) в системе.Дата и время.Синтаксический анализ(String s, String format, IFormatProvider provider) в Program.Main() : строка 16

     string launchMeetingDate = "2020-10-27T09.29.00.000Z";
    var launchDate = Helper.ConvertStringToUTCDateTime(launchMeetingDate);
    public static DateTime ConvertStringToUTCDateTime(string date)
    {
        DateTime dateTime;
        bool isDateTime = DateTime.TryParse(date, out dateTime);
        return dateTime.ToUniversalTime();
    }
  

Комментарии:

1. Какие параметры формата вы передаете методу в строке 16 вашего кода?

2. Я пытаюсь преобразовать DateTimeString = «2020-10-27T09.29.00.000Z» в дату и время

3. Да, вы уже говорили об этом в вопросе🙄, и это первый параметр, но каковы остальные 2 значения параметра ( format и provider )? Не зная format , как вы ожидали, что мы поможем вам выяснить, что вы сделали не так?

4. Я сохраняю дату и время в формате «гггг-ММ-dd’T’HH: mm: ss.000’Z'» в базе данных в виде строки и теперь пытаюсь проанализировать ее до даты и времени utc.

5. Ошибка в вопросе показывает, что ошибка связана с вызовом System.DateTime.ParseExact() в строке 16 вашего Program.Main() метода. Ни один из кодов, которые вы показали в комментариях, не имеет ParseExact() вызова, так какова цель показа всего этого кода? Нам нужно увидеть ParseExact() вызов, чтобы помочь вам выяснить, что вы сделали неправильно. Пожалуйста, проявите хотя бы немного здравого смысла и покажите соответствующий код !! Я имею в виду, если вам нужна наша помощь, то есть. А вы?

Ответ №1:

Пожалуйста, попробуйте это

 DateTimeString = "2020-10-27T09:29:00.000Z"
  

Комментарии:

1. Спасибо, это работает, но как мы можем заменить ‘.’ на ‘:’ для всех записей?

2. Это не отвечает на вопрос, но близко. @Akash не могли бы вы вставить код, необходимый для того, чтобы показать оператору, как анализировать его конкретный формат даты?