C#TryParse

时间:2013-03-17 20:14:07

标签: c# tryparse

char typeClient = ' ';
bool clientValide = false;
while (!clientValide)
{
     Console.WriteLine("\nEntrez le type d'employé (c ou g) : ");
     clientValide = char.TryParse(Console.ReadLine(), out typeClient);
     if (clientValide)
         typeClient = 'c';
}

我想这样做,所以它不会退出,除非char是'g'或'c' 救命 ! :)

4 个答案:

答案 0 :(得分:5)

string input;
do {
    Console.WriteLine("Entrez le type d'employé (c ou g):");
    input = Console.ReadLine();
} while (input != "c" && input != "g");

char typeClient = input[0];

答案 1 :(得分:5)

您是否使用Console.ReadLine,用户必须在按 c g 后按 Enter 。请改用ReadKey以便响应是即时的:

bool valid = false;
while (!valid)
{
    Console.WriteLine("\nEntrez le type d'employé (c ou g) : ");
    var key = Console.ReadKey();
    switch (char.ToLower(key.KeyChar))
    {
        case 'c':
            // your processing
            valid = true;
            break;
        case 'g':
            // your processing
            valid = true;
            break;
        default:
            Console.WriteLine("Invalid. Please try again.");
            break;
    }
}

答案 2 :(得分:0)

你真的很亲密,我觉得这样的事情对你很有用:

char typeClient = ' ';
while (typeClient != 'c' && typeClient != 'g')
{
    Console.WriteLine("\nEntrez le type d'employé (c ou g) : ");
    var line = Console.ReadLine();
    if (!string.IsNullOrEmpty(line)) { typeClient = line[0]; }
    else { typeClient = ' '; }
}

当用户输入内容时,它基本上会读取typeClient变量的输入,因此循环将继续,直到他们输入gc

答案 3 :(得分:-2)

您可以将ConsoleKeyInfo与Console.ReadKey()结合使用:

dmesg

如果客户是com bon vous semblera pour votre类型的客户,请输入pusaprèsvous ferez votre bloque;)