РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
587 of 723 menu

Метод tryParse

Метод tryParse класса DateTime пытается преобразовать строку в объект даты и времени. В первый параметр мы передаем строку с датой, во второй необязательный параметр - формат даты (если он не указан, используется формат ISO 8601). Если строка корректна, метод возвращает объект DateTime, а если строка имеет неверный формат - возвращает null. В отличие от метода parse, который выбрасывает исключение при ошибке, tryParse не прерывает выполнение программы.

Синтаксис

DateTime.tryParse(str, [format])

Пример

Давайте распарсим корректную строку с датой в формате ISO 8601:

void main() { DateTime? res = DateTime.tryParse('2023-01-15'); print(res); }

Результат выполнения кода:

2023-01-15 00:00:00.000

Пример

Давайте передадим методу строку с неверным форматом и получим null вместо исключения:

void main() { DateTime? res = DateTime.tryParse('abcde'); print(res); }

Результат выполнения кода:

null

Пример

Давайте распарсим строку с датой и временем в формате ISO 8601:

void main() { DateTime? res = DateTime.tryParse('2023-01-15 10:30:45'); print(res); }

Результат выполнения кода:

2023-01-15 10:30:45.000

Пример

Давайте используем второй параметр и передадим собственный формат даты:

void main() { DateTime? res = DateTime.tryParse('15.01.2023', 'dd.MM.yyyy'); print(res); }

Результат выполнения кода:

2023-01-15 00:00:00.000

Пример

Давайте проверим результат на null перед использованием:

void main() { DateTime? res = DateTime.tryParse('12345'); if (res != null) { print(res.year); } else { print('Invalid date'); } }

Результат выполнения кода:

"Invalid date"

Смотрите также

  • метод parse,
    который парсит строку и выбрасывает исключение при ошибке
  • класс DateTime,
    который представляет дату и время
  • метод now,
    который возвращает текущую дату и время
  • метод toIso8601String,
    который преобразует дату в строку формата ISO 8601
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить