Skip to content
Related Articles

Related Articles

Console.KeyAvailable() Property in C#
  • Last Updated : 24 Jul, 2020

Console.KeyAvailable Property is used to get a value which shows whether a key press is available in the input stream. This property does not block input until a key press is available.

Syntax: public static bool KeyAvailable { get; }
Property Value: It will return true if a key press is available otherwise, it retuns false.


  • InvalidOperationException: If the standard input is redirected to a file instead of the keyboard.
  • IOException: If an I/O error occured.


// C# Program to demonstrate 
// KeyAvailable property
using System;
using System.Threading;
namespace GFG {
class GFG {
    public static void Main()
        // declare a new ConsoleKeyInfo object
        ConsoleKeyInfo c = new ConsoleKeyInfo();
        // outer loop to work until 'z' is pressed
        do {
            Console.WriteLine("\nPress a key to display; "+
                              "press the 'z' key to quit.");
            // inner loop to check whether a key 
            // is pressed using KeyAvailable 
            while (Console.KeyAvailable == false)
                // Loop until input is entered.
            c = Console.ReadKey(true);
            Console.WriteLine("You pressed the '{0}' key.", c.Key);
        } while (c.Key != ConsoleKey.Z);



Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up
Recommended Articles
Page :