Как создать .NET DateTime из формата ISO 8601

Я нашел, как преобразовать DateTime в формат ISO 8601 , но не знал, как сделать обратное в C #.

У меня есть 2010-08-20T15: 00: 00Z , и я хочу превратить его в объект DateTime .

Я мог бы разделить части струны сам, но это кажется большим трудом для чего-то, что уже является международным стандартом.

115
задан Liam 23 March 2017 в 17:24
поделиться

3 ответа

Это решение использует перечисление DateTimeStyles, а также работает с Z.

DateTime d2 = DateTime.Parse("2010-08-20T15:00:00Z", null, System.Globalization.DateTimeStyles.RoundtripKind);

Это решение идеально печатает.

131
ответ дан 24 November 2019 в 02:26
поделиться
using System.Globalization;

DateTime d;
DateTime.TryParseExact(
    "2010-08-20T15:00:00",
    "s",
    CultureInfo.InvariantCulture,
    DateTimeStyles.AssumeUniversal, out d);
21
ответ дан 24 November 2019 в 02:26
поделиться

DateTime.ParseExact (...) позволяет вам сообщить синтаксическому анализатору, что представляет каждый символ.

-1
ответ дан 24 November 2019 в 02:26
поделиться
Другие вопросы по тегам:

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