Я создаю календарь, и я хочу проверить, является ли введенный пользователем действительный срок. Я получил это далеко, и теперь я не знаю, как повторить сообщение «неверная дата», пока оно не будет действительным.Проверьте, действительно ли введен ввод пользователем
Мой код:
var dateFormats = new[] {"dd.MM.yyyy", "dd-MM-yyyy", "dd/MM/yyyy"};
Console.Write("\nSet your date: ");
string readAddMeeting = Console.ReadLine();
DateTime scheduleDate;
bool validDate = DateTime.TryParseExact(
readAddMeeting,
dateFormats,
DateTimeFormatInfo.InvariantInfo,
DateTimeStyles.None,
out scheduleDate);
if (validDate)
{
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("Valid date");
Console.ForegroundColor = ConsoleColor.White;
}
else
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("Invalid date: \"{0}\"", readAddMeeting);
Console.ForegroundColor = ConsoleColor.White;
}
Вы можете использовать оператор 'while'. Проверьте документацию. –
вам нужно объяснить, о чем вы говорите, «как повторить сообщение« неверная дата »до тех пор, пока он не станет действительным.« Я не следую. – Seabizkit
Вы можете использовать пока. И вам не нужно иметь даты, вместе с TryParseExact. Вместо этого вы можете просто использовать TryParse. Например, если текущая культура является en-US, пользователь может захотеть ввести «1 января 2015 года», которая является действительной датой. –