此方法用于从标准输入流中读取下一行字符。它在Console类(系统命名空间)下。如果标准输入设备是键盘,则ReadLine方法将阻塞,直到用户按下Enter键。而且,如果将标准输入重定向到文件,则此方法将从文件中读取一行文本。
Syntax: public static string ReadLine ();
Return Value: It returns the next line of characters of string type from the input stream, or null if no more lines are available.
例外情况:
- IOException :如果发生I / O错误。
- OutOfMemoryException :如果没有足够的内存为返回的字符串分配缓冲区。
- ArgumentOutOfRangeException :如果下一行字符中的字符数大于MaxValue。
下面的程序说明了上面讨论的方法的用法:
示例1:在这里,从用户那里获取输入。由于age是一个整数,因此我们使用Convert.ToInt32()方法进行了类型转换。它从输入流中读取下一行。它会一直阻塞,直到按Enter键为止。因此,它通常用于暂停控制台,以便用户可以检查输出。
// C# program to illustrate
// the use of Console.ReadLine()
using System;
using System.IO;
class GFG {
// Main Method
public static void Main()
{
int age;
string name;
Console.WriteLine("Enter your name: ");
// using the method
// typecasting not needed
// as ReadLine returns string
name = Console.ReadLine();
Console.WriteLine("Enter your age: ");
// Converted string to int
age = Convert.ToInt32(Console.ReadLine());
if (age >= 18)
{
Console.WriteLine("Hello " + name + "!"
+ " You can vote");
}
else {
Console.WriteLine("Hello " + name + "!"
+ " Sorry you can't vote");
}
}
}
输出:
示例2:暂停控制台
// C# program to illustrate
// the use of Console.ReadLine()
// to pause the console
using System;
using System.IO;
class Geeks {
// Main Method
public static void Main()
{
string name;
int n;
Console.WriteLine("Enter your name: ");
// typecasting not needed as
// ReadLine returns string
name = Console.ReadLine();
Console.WriteLine("Hello " + name +
" Welcome to GeeksforGeeks!");
// Pauses the console until
// the user preses enter key
Console.ReadLine();
}
}
输出:
说明:在上面的输出中,您可以看到控制台已暂停。光标将连续闪烁,直到您按Enter键。
参考:
- https://docs.microsoft.com/zh-cn/dotnet/api/system.console.readline?view=netframework-4.7.2