Метод DateTime.Parse
Метод Parse читает строку и
возвращает DateTime. Формат
зависит от CultureInfo - в
примерах всегда
CultureInfo.InvariantCulture.
Без сбоя пробуют
TryParse,
по шаблону -
ParseExact.
Синтаксис
using System.Globalization;
DateTime dt = DateTime.Parse(text, CultureInfo.InvariantCulture);
Пример
Давайте разберём "2020-01-02"
и выведем части даты:
using System;
using System.Globalization;
class Program
{
static void Main()
{
DateTime res = DateTime.Parse(
"2020-01-02", CultureInfo.InvariantCulture);
Console.WriteLine(res.Year);
Console.WriteLine(res.Month);
Console.WriteLine(res.Day);
Console.WriteLine(res.Hour);
Console.WriteLine(res.Minute);
Console.WriteLine(res.Second);
Console.WriteLine(res.Kind == DateTimeKind.Unspecified);
}
}
Результат выполнения кода:
2020
1
2
0
0
0
True
Пример
Давайте поймаем FormatException
для "abcde":
using System;
using System.Globalization;
class Program
{
static void Main()
{
try
{
DateTime.Parse("abcde", CultureInfo.InvariantCulture);
}
catch (FormatException)
{
Console.WriteLine("fail");
}
}
}
Результат выполнения кода:
"fail"
Пример
Давайте разберём строку с временем в инвариантной культуре:
using System;
using System.Globalization;
class Program
{
static void Main()
{
DateTime res = DateTime.Parse(
"2020-01-02 03:04:05", CultureInfo.InvariantCulture);
Console.WriteLine(res.Hour);
Console.WriteLine(res.Minute);
}
}
Результат выполнения кода:
3
4
Смотрите также
-
TryParse,
разбор без исключения -
ParseExact,
строгий шаблон -
ToString,
дата обратно в строку -
DateTimeStyles,
флаги разбора