Я делаю это тестовое приложение, и оно должно пройти длинный список дат из текстового файла и получить недостающие (исключая выходные дни) и записать результаты в выходной файл. Если пропущенная дата - один день, выходной результат должен быть ccyy / mm / dd, если это больше одного дня, это должен быть ccyy / mm / dd - ccyy / mm / dd, так что это то, что я придумал и кажется, что он не работает должным образом, я думаю, что я не делаю тест правильно.
List<string> missigDateStrings = new List<string>();
for (int i = 0; i < dateList.Count; i++ )
{
DateTime firstDate = dateList[i];
DateTime secondDate = dateList[i + 1];
if (firstDate.DayOfWeek != DayOfWeek.Saturday &&
firstDate.DayOfWeek != DayOfWeek.Sunday)
{
if (secondDate.DayOfWeek != DayOfWeek.Saturday &&
secondDate.DayOfWeek != DayOfWeek.Sunday)
{
if (firstDate.AddDays(1) != secondDate)
{
string sFirstMissingDate = firstDate.ToShortDateString();
DateTime testDate = firstDate;
while (testDate != secondDate)
{
testDate.AddDays(1);
if (testDate == secondDate)
{
string sLastMissingDate = firstDate.AddDays(1).ToShortDateString();
string range = String.Format("{0}-{1}", sFirstMissingDate, sLastMissingDate);
missigDateStrings.Add(range);
}
}
}
}
}
}
}
Любая помощь будет оценена.
P.S. все даты были преобразованы в DateTime
ОТЛИЧНО! СПАСИБО ВСЕМ