Rust - как получить все даты текущей недели?

Получил через now дату начала (beginning_of_week()) и конца текущей недели (end_of_week()). А как можно получить весь список дат текущей недели с начала и до ее конца?


Ответы (1 шт):

Автор решения: extrn

если нужен именно DateTime, то видимо придётся что-то костылировать

Не то, чтобы прям костылировать

let current_week = Local.beginning_of_week()
    .date_naive()
    .iter_days()
    .map(|d| Local.from_local_datetime(&d.into()).unwrap())
    .take(7);

Насчет .unwrap(), сугубо в теории, может получиться, что в некоторых таймзонах, из за перехода на зимнее/летнее время в самом начале суток, такой даты в реальности может и не существовать, либо она не однозначно определена. На практике, как мне кажется, это маловероятно либо вовсе невероятно.

→ Ссылка