C# Console Uygulamasında Sadece Sayı Girişi


C# ile Console uygulamaları geliştirirken girilecek olan bilginin sadece sayı olmasını isteyebilirsiniz, bunun için aşağıdaki kodları kullanmamız yeterli; kısaca yapılacak işlem klavyeden girilen bilgileri karakter karakter okumak (Enter Tuşuna basılana kadar) ve girilen değerin sayı olup olmadığını kontrol etmek

string sayi = "";
Console.Write("Bir Sayı Girin: ");
ConsoleKeyInfo karakter;
do
{
karakter = Console.ReadKey(true);
//Eğer Backspace tuşuna basılmamışsa 
if (karakter.Key != ConsoleKey.Backspace)
{//http://www.bilisimogretmeni.com
double val = 0;
//Klavyeden okunan değerin sayı olup olmadığını kontrol ediyoruz
//Diğer karakterin yanına ekliyoruz..
bool kontrol = double.TryParse(karakter.KeyChar.ToString(), out val);
if (kontrol)
{
sayi += karakter.KeyChar;
Console.Write(karakter.KeyChar);
}
}
else
//Eğer Backspace tuşuna basılmışsa sayıyı siliyoruz
{//http://www.bilisimogretmeni.com
if (karakter.Key == ConsoleKey.Backspace && sayi.Length > 0)
{
sayi = sayi.Substring(0, (sayi.Length - 1));
Console.Write("\b \b");
}
}
}
// Enter a basıldığında döngüden çıkıyoruz
while (karakter.Key != ConsoleKey.Enter);
Console.WriteLine();
Console.WriteLine("Girilen değer : " + sayi);
Console.ReadKey();
X

Pin It on Pinterest

X