Console.Read()
स्टैंडर्ड इनपुट से अगला कैरेक्टर पढ़ता है। ASCII/यूनिकोड कोड पॉइंट के रूप में int लौटाता है। कोई इनपुट न होने पर -1।
int ch = Console.Read(); // 'A' दबाने पर 65 लौटाता है
Console.WriteLine(ch);
Console.ReadKey()
सिंगल की प्रेस पढ़ता है। ConsoleKeyInfo स्ट्रक्चर लौटाता है जिसमें Key, KeyChar, Modifiers होते हैं।
ConsoleKeyInfo key = Console.ReadKey(); // डिस्प्ले करता है
ConsoleKeyInfo key = Console.ReadKey(true); // डिस्प्ले नहीं करता (इंटरसेप्ट)
Console.ReadLine()
पूरी लाइन पढ़ता है (एंटर तक)। string लौटाता है।
string line = Console.ReadLine();
तुलना तालिका
| मेथड | रिटर्न | इनपुट | बफरिंग | उपयोग |
|---|---|---|---|---|
| Read() | int | 1 कैरेक्टर | लाइन बफर्ड | कैरेक्टर-बाय-कैरेक्टर प्रोसेसिंग |
| ReadKey() | ConsoleKeyInfo | 1 की प्रेस | अनबफर्ड (तत्काल) | मेनू, गेम्स, पासवर्ड (इंटरसेप्ट) |
| ReadLine() | string | पूरी लाइन | लाइन बफर्ड | सामान्य यूजर इनपुट |
उदाहरण: पासवर्ड इनपुट (ReadKey इंटरसेप्ट)
Console.Write("पासवर्ड: ");
string password = "";
ConsoleKeyInfo key;
do {
key = Console.ReadKey(true);
if (key.Key != ConsoleKey.Enter && key.Key != ConsoleKey.Backspace) {
password += key.KeyChar;
Console.Write("*");
} else if (key.Key == ConsoleKey.Backspace && password.Length > 0) {
password = password[..^1];
Console.Write("\b \b");
}
} while (key.Key != ConsoleKey.Enter);
Console.WriteLine();