Нахождение дней между диапазоном дат(не кол-во дней, а сами дни) - C#

Узнай цену своей работы

Формулировка задачи:

Всем привет, возникла такая задачка: есть начальная и конечная даты, нужно найти дни между ними, не само кол-во дней, а именно сами дни, например: начальная дата 01.03.2013 конечная 10.03.2013 и надо из этих дат получить список дат: 01.03.2013, 02.03.2013, 03.03.2013 и так далее, что-то мсднил но ничего такого не нашел, без самописной функции тут не обойтись? Пока что лучший вариант,который мне пока представляется, это использовать скажем AddDays и добавлять по 1 дню пока не дойдем до даты окончания, как думаете норм вариант? не будет долго работать, если скажем надо найти даты между 2х годов?
Ну вроде проверил, работает нормально, попробывал разные годы выбрать, 375 объектов вернул быстро, ждать не пришлось, если кому понадобится или захотите покритиковать:
/// <summary>Возвращает коллекцию дат из переданного интервала
    /// (если передали 1 и 3 число, он должен вернуть 1,2,3) </summary>
    public List<DateTime> GetDatesFromInterval(DateTime startDate, DateTime endDate)
    {
        List<DateTime> result = new List<DateTime>();
        if (startDate > endDate) return result;
        result.Add(startDate);
 
        if (startDate < endDate)
        {
            while (startDate != endDate)
            {
                DateTime d = startDate.AddDays(1);
                result.Add(d);
                startDate = d;
            }
        }
 
        return result;
    }

Решение задачи: «Нахождение дней между диапазоном дат(не кол-во дней, а сами дни)»

textual
Листинг программы
for(DateTime dt = start; dt <= end; dt = dt.AddYear(1))

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4 из 5
Похожие ответы