一、概述
C#中Console类主要用于控制台程序的输入和输出操作
二、Console常用方法
| 方法 | 描述 | 
|---|
| Write | 向控制台输出内容后不换行 | 
| WriteLine | 向控制台输出内容后换行 | 
| Read | 从控制台读取一个字符 | 
| ReadLine | 从控制台读取一行字符 | 
- 此外,在向控制台输出内容时也可以对输出的内容进行格式化,格式化时使用的是占位符的方法,语法形式如下: - Console.Write(格式化字符串, 输出项, 输出项2); 
- 其中,在格式化字符串中使用{索引号}的形式,索引号从0开始。输出项1填充{0}位置的内容,依次类推 
三、实例
从控制台依次输入姓名和所在学校,并在输出时组成一句话“xx 同学在 xx 学习”
代码
class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine("请输入学生姓名:");
        string name = Console.ReadLine();
        Console.WriteLine("请输入所在学校:");
        string school = Console.ReadLine();
        Console.WriteLine("{0}同学在{1}学习", name, school);
    }
}
更多信息
一:Console 类简单说明
   表示控制台应用程序的标准输入流、输出流和错误流 。 此类不能被继承。控制台是一个操作系统窗口,用户通过计算机键盘输入文本输入以及从计算机终端读取文本输出,与操作系统或基于文本的控制台应用程序进行交互。 例如,在 Windows操作系统中,控制台称为"命令提示符"窗口并接受 MS-DOS 命令。 Console 类为从控制台读取字符和向控制台写入字符 Console 的应用程序提供基本支持。
二:Console 类的常用属性
| 属性 | 属性说明 | 
|---|
| BackgroundColor | 获取或设置控制台的背景色。 | 
| ForegroundColor | 获取或设置控制台的前景色。 | 
| CursorVisible | 获取或设置一个值,用以指示光标是否可见。 | 
| KeyAvailable | 获取一个值,该值指示按键操作在输入流中是否可用。 | 
| In | 获取标准输入流。 | 
| Out | 获取标准输出流。 | 
| WindowHeight | 获取或设置控制台窗口区域的高度。 | 
| WindowWidth | 获取或设置控制台窗口的宽度。 | 
| Title | 获取或设置要显示在控制台标题栏中的标题。 | 
1: Console 类的属性使用举例一
// 获取包含ConsoleColor枚举成员的值的数组.
ConsoleColor[] colors = (ConsoleColor[])ConsoleColor.GetValues(typeof(ConsoleColor));
// 保存当前背景色和前景色.
ConsoleColor currentBackground = Console.BackgroundColor;
ConsoleColor currentForeground = Console.ForegroundColor;
// 显示除了与背景匹配的前景色外的所有前景色.
Console.WriteLine("所有前景色,除了 {0} 背景色:", currentBackground);
foreach (var color in colors) {
    if (color == currentBackground) continue;
    Console.ForegroundColor = color;
    Console.WriteLine("前景色是 {0} .", color);
}
运行结果:
| 所有前景色,除了 Black 背景色: 前景色是 DarkBlue .
 前景色是 DarkGreen .
 前景色是 DarkCyan .
 前景色是 DarkRed .
 前景色是 DarkMagenta .
 前景色是 DarkYellow .
 前景色是 Gray .
 前景色是 DarkGray .
 前景色是 Blue .
 前景色是 Green .
 前景色是 Cyan .
 前景色是 Red .
 前景色是 Magenta .
 前景色是 Yellow .
 前景色是 White .
 | 
2: Console 类的属性使用举例二
TextReader tIn = Console.In;
TextWriter tOut = Console.Out;
tOut.WriteLine("专心做好一件事");
tOut.Write("你说对不对?");
String Reply = tIn.ReadLine();
tOut.WriteLine("你的回复是:{0}!", Reply);
运行结果:
| 专心做好一件事! 你说对不对?Yes
 你的回复是:Yes!
 | 
三:Console 类的常用方法
| 方法 | 方法说明 | 
|---|
| Beep() | 通过控制台扬声器播放提示音。 | 
| Beep(Int32, Int32) | 通过控制台扬声器播放具有指定频率和持续时间的提示音。 | 
| Clear() | 清除控制台缓冲区和相应的控制台窗口的显示信息。 | 
| ResetColor() | 将控制台的前景色和背景色设置为默认值。 | 
| Read() | 从标准输入流读取下一个字符。 | 
| ReadKey() | 获取用户按下的下一个字符或功能键。 按下的键显示在控制台窗口中。 | 
| ReadLine() | 从标准输入流读取下一行字符。 | 
| Write(Char[]) | 将指定的 Unicode 字符数组,写入标准输出流。 | 
| Write(Char[], Int32, Int32) | 将指定的 Unicode 字符子数组,写入标准输出流。 | 
| Write(Int32) | 将指定的 32 位有符号整数值的文本,写入标准输出流。 | 
| Write(String) | 将指定的字符串值,写入标准输出流。 | 
| Write(String, Object) | 使用指定的格式信息将指定对象的文本表示形式,写入标准输出流。 | 
| Write(String, Object, Object, Object, Object) | 使用指定的格式信息将指定的对象和可变长度参数列表的文本表示形式,写入标准输出流。 | 
| WriteLine() | 将当前行终止符写入标准输出流。 | 
| WriteLine(Char[]) | 将指定的 Unicode 字符数组(后跟当前行终止符)写入标准输出流。 | 
| WriteLine(String, Object, Object, Object) | 使用指定的格式信息,将指定对象的文本表示形式(后跟当前行终止符)写入标准输出流。 | 
1: WriteLine()方法使用举例
1.1: 以各种方式,负整数或浮点数的显示格式的演示
Console.WriteLine("标准数字格式说明符");
Console.WriteLine("(C) 货币: . . . . . . . . {0:C}\n"
                  +"(D) 十进制的:. . . . . . . . . {0:D}\n"
                  +"(E) 科学的: . . . . . . . {1:E}\n"
                  +"(F) 定点:. . . . . . . {1:F}\n" +"(G) 一般的:. . . . . . . . . {0:G}\n"
                  +"    (default):. . . . . . . . {0} (default = 'G')\n"
                  +"(N) 数字: . . . . . . . . . {0:N}\n"
                  +"(P) 百分比:. . . . . . . . . {1:P}\n"
                  +"(R) 往返的: . . . . . . . {1:R}\n"
                  +"(X) 十六进制的:. . . . . . . {0:X}\n",-123, -123.45f);
运行结果:
| 标准数字格式说明符 (C) 货币: . . . . . . . . ¥-123.00
 (D) 十进制的:. . . . . . . . . -123
 (E) 科学的: . . . . . . . -1.234500E+002Yes
 (F) 定点:. . . . . . . -123.45
 (G) 一般的:. . . . . . . . . -123
 (default):. . . . . . . . -123 (default = 'G')
 (N) 数字: . . . . . . . . . -123.00
 (P) 百分比:. . . . . . . . . -12,345.00%
 (R) 往返的: . . . . . . . -123.45
 (X) 十六进制的:. . . . . . . FFFFFF85
 | 
1.2: 以各种方式,设置当前日期的格式的演示
DateTime thisDate = DateTime.Now;
Console.WriteLine("标准日期时间格式说明符");
Console.WriteLine("(d) 短日期: . . . . . . . {0:d}\n"
                  +"(D) 长日期:. . . . . . . . {0:D}\n"
                  +"(t) 短时间: . . . . . . . {0:t}\n"
                  +"(T) 长时间:. . . . . . . . {0:T}\n"
                  +"(f) 全日期/短时间: . . {0:f}\n"
                  +"(F) 全日期/长时间:. . . {0:F}\n"
                  +"(g) 一般日期/短时间:. {0:g}\n"
                  +"(G) 一般日期/长时间: . {0:G}\n"
                  +"    (default):. . . . . . . . {0} (default = 'G')\n"
                  +"(M) 月:. . . . . . . . . . {0:M}\n"
                  +"(R) RFC1123:. . . . . . . . . {0:R}\n"
                  +"(s) 可排序的: . . . . . . . . {0:s}\n"
                  +"(u) 通用可排序: . . . {0:u} (invariant)\n"
                  +"(U) 通用完整日期/时间: {0:U}\n"
                  +"(Y) 年: . . . . . . . . . . {0:Y}\n",thisDate);
| 标准日期时间格式说明符 (d) 短日期: . . . . . . . 2022/9/7
 (D) 长日期:. . . . . . . . 2022年9月7日
 (t) 短时间: . . . . . . . 21:52
 (T) 长时间:. . . . . . . . 21:52:22
 (f) 全日期/短时间: . . 2022年9月7日 21:52
 (F) 全日期/长时间:. . . 2022年9月7日 21:52:22
 (g) 一般日期/短时间:. 2022/9/7 21:52
 (G) 一般日期/长时间: . 2022/9/7 21:52:22
 (default):. . . . . . . . 2022/9/7 21:52:22 (default = 'G')
 (M) 月:. . . . . . . . . . 9月7日
 (R) RFC1123:. . . . . . . . . Wed, 07 Sep 2022 21:52:22 GMT
 (s) 可排序的: . . . . . . . . 2022-09-07T21:52:22
 (u) 通用可排序: . . . 2022-09-07 21:52:22Z (invariant)
 (U) 通用完整日期/时间: 2022年9月7日 13:52:22
 (Y) 年: . . . . . . . . . . 2022年9月
 | 
2: ReadLine()方法使用举例
Console.WriteLine("请输入码农的姓名:");
string name = Console.ReadLine();
Console.WriteLine("请输入所在996公司:");
string Company= Console.ReadLine();
Console.WriteLine("{0}码农在{1}苦逼撸代码", name, Company);
运行结果:
| 请输入码农的姓名: 猿人
 请输入所在996公司:
 码厂
 猿人码农在码厂苦逼撸代码
 | 
其他相关信息
1、控制台输出信息:
Console.Write("Hello World");//没有换行
Console.WriteLine("Hello World");//换行
// {0}插值,占个位置,模板字符串, {index索引}
Console.WriteLine("{0}会在控制台上显示一段输出:{0},{1}", "ABC", "abc");
Console.BackgroundColor = ConsoleColor.Red;//输出后背景颜色
Console.ForegroundColor = ConsoleColor.Green;//输出后字体颜色
Console.Read();// 读取一行,以回车结束,不换行
Console.ReadLine(); // 读取一行,以回车结束
Console.ReadKey(); // 读取一个键
Console.Clear(); // 清屏
2、向控制台输入信息:
Console.WriteLine("请输入您的姓名?");
string myName = Console.ReadLine();
Console.WriteLine("请输入您的年龄?");
string myAge = Console.ReadLine();
// 模板字符串的两种应用: {index}    $"{变量名称}"
Console.WriteLine("你输入的姓名:{0},你输入的年龄:{1}", myName, myAge);
Console.WriteLine($"你输入的姓名:{myName},你输入的年龄:{myAge}");//常用方法
该文章在 2025/2/6 12:16:32 编辑过