一、概述
C#中Console類主要用于控制臺(tái)程序的輸入和輸出操作
二、Console常用方法
方法 | 描述 |
---|
Write | 向控制臺(tái)輸出內(nèi)容后不換行 |
WriteLine | 向控制臺(tái)輸出內(nèi)容后換行 |
Read | 從控制臺(tái)讀取一個(gè)字符 |
ReadLine | 從控制臺(tái)讀取一行字符 |
此外,在向控制臺(tái)輸出內(nèi)容時(shí)也可以對(duì)輸出的內(nèi)容進(jìn)行格式化,格式化時(shí)使用的是占位符的方法,語(yǔ)法形式如下:
Console.Write(格式化字符串, 輸出項(xiàng), 輸出項(xiàng)2);
其中,在格式化字符串中使用{索引號(hào)}的形式,索引號(hào)從0開(kāi)始。輸出項(xiàng)1填充{0}位置的內(nèi)容,依次類推
三、實(shí)例
從控制臺(tái)依次輸入姓名和所在學(xué)校,并在輸出時(shí)組成一句話“xx 同學(xué)在 xx 學(xué)習(xí)”
代碼
class Program
{
static void Main(string[] args)
{
Console.WriteLine("請(qǐng)輸入學(xué)生姓名:");
string name = Console.ReadLine();
Console.WriteLine("請(qǐng)輸入所在學(xué)校:");
string school = Console.ReadLine();
Console.WriteLine("{0}同學(xué)在{1}學(xué)習(xí)", name, school);
}
}
更多信息
一:Console 類簡(jiǎn)單說(shuō)明
?? 表示控制臺(tái)應(yīng)用程序的標(biāo)準(zhǔn)輸入流、輸出流和錯(cuò)誤流 。 此類不能被繼承??刂婆_(tái)是一個(gè)操作系統(tǒng)窗口,用戶通過(guò)計(jì)算機(jī)鍵盤輸入文本輸入以及從計(jì)算機(jī)終端讀取文本輸出,與操作系統(tǒng)或基于文本的控制臺(tái)應(yīng)用程序進(jìn)行交互。 例如,在 Windows操作系統(tǒng)中,控制臺(tái)稱為"命令提示符"窗口并接受 MS-DOS 命令。 Console 類為從控制臺(tái)讀取字符和向控制臺(tái)寫入字符 Console 的應(yīng)用程序提供基本支持。
二:Console 類的常用屬性
屬性 | 屬性說(shuō)明 |
---|
BackgroundColor | 獲取或設(shè)置控制臺(tái)的背景色。 |
ForegroundColor | 獲取或設(shè)置控制臺(tái)的前景色。 |
CursorVisible | 獲取或設(shè)置一個(gè)值,用以指示光標(biāo)是否可見(jiàn)。 |
KeyAvailable | 獲取一個(gè)值,該值指示按鍵操作在輸入流中是否可用。 |
In | 獲取標(biāo)準(zhǔn)輸入流。 |
Out | 獲取標(biāo)準(zhǔn)輸出流。 |
WindowHeight | 獲取或設(shè)置控制臺(tái)窗口區(qū)域的高度。 |
WindowWidth | 獲取或設(shè)置控制臺(tái)窗口的寬度。 |
Title | 獲取或設(shè)置要顯示在控制臺(tái)標(biāo)題欄中的標(biāo)題。 |
1: Console 類的屬性使用舉例一
// 獲取包含ConsoleColor枚舉成員的值的數(shù)組.
ConsoleColor[] colors = (ConsoleColor[])ConsoleColor.GetValues(typeof(ConsoleColor));
// 保存當(dāng)前背景色和前景色.
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);
}
運(yùn)行結(jié)果:
所有前景色,除了 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("你說(shuō)對(duì)不對(duì)?");
String Reply = tIn.ReadLine();
tOut.WriteLine("你的回復(fù)是:{0}!", Reply);
運(yùn)行結(jié)果:
專心做好一件事! 你說(shuō)對(duì)不對(duì)?Yes 你的回復(fù)是:Yes! |
三:Console 類的常用方法
方法 | 方法說(shuō)明 |
---|
Beep() | 通過(guò)控制臺(tái)揚(yáng)聲器播放提示音。 |
Beep(Int32, Int32) | 通過(guò)控制臺(tái)揚(yáng)聲器播放具有指定頻率和持續(xù)時(shí)間的提示音。 |
Clear() | 清除控制臺(tái)緩沖區(qū)和相應(yīng)的控制臺(tái)窗口的顯示信息。 |
ResetColor() | 將控制臺(tái)的前景色和背景色設(shè)置為默認(rèn)值。 |
Read() | 從標(biāo)準(zhǔn)輸入流讀取下一個(gè)字符。 |
ReadKey() | 獲取用戶按下的下一個(gè)字符或功能鍵。 按下的鍵顯示在控制臺(tái)窗口中。 |
ReadLine() | 從標(biāo)準(zhǔn)輸入流讀取下一行字符。 |
Write(Char[]) | 將指定的 Unicode 字符數(shù)組,寫入標(biāo)準(zhǔn)輸出流。 |
Write(Char[], Int32, Int32) | 將指定的 Unicode 字符子數(shù)組,寫入標(biāo)準(zhǔn)輸出流。 |
Write(Int32) | 將指定的 32 位有符號(hào)整數(shù)值的文本,寫入標(biāo)準(zhǔn)輸出流。 |
Write(String) | 將指定的字符串值,寫入標(biāo)準(zhǔn)輸出流。 |
Write(String, Object) | 使用指定的格式信息將指定對(duì)象的文本表示形式,寫入標(biāo)準(zhǔn)輸出流。 |
Write(String, Object, Object, Object, Object) | 使用指定的格式信息將指定的對(duì)象和可變長(zhǎng)度參數(shù)列表的文本表示形式,寫入標(biāo)準(zhǔn)輸出流。 |
WriteLine() | 將當(dāng)前行終止符寫入標(biāo)準(zhǔn)輸出流。 |
WriteLine(Char[]) | 將指定的 Unicode 字符數(shù)組(后跟當(dāng)前行終止符)寫入標(biāo)準(zhǔn)輸出流。 |
WriteLine(String, Object, Object, Object) | 使用指定的格式信息,將指定對(duì)象的文本表示形式(后跟當(dāng)前行終止符)寫入標(biāo)準(zhǔn)輸出流。 |
1: WriteLine()方法使用舉例
1.1: 以各種方式,負(fù)整數(shù)或浮點(diǎn)數(shù)的顯示格式的演示
Console.WriteLine("標(biāo)準(zhǔn)數(shù)字格式說(shuō)明符");
Console.WriteLine("(C) 貨幣: . . . . . . . . {0:C}\n"
+"(D) 十進(jìn)制的:. . . . . . . . . {0:D}\n"
+"(E) 科學(xué)的: . . . . . . . {1:E}\n"
+"(F) 定點(diǎn):. . . . . . . {1:F}\n" +"(G) 一般的:. . . . . . . . . {0:G}\n"
+" (default):. . . . . . . . {0} (default = 'G')\n"
+"(N) 數(shù)字: . . . . . . . . . {0:N}\n"
+"(P) 百分比:. . . . . . . . . {1:P}\n"
+"(R) 往返的: . . . . . . . {1:R}\n"
+"(X) 十六進(jìn)制的:. . . . . . . {0:X}\n",-123, -123.45f);
運(yùn)行結(jié)果:
標(biāo)準(zhǔn)數(shù)字格式說(shuō)明符 (C) 貨幣: . . . . . . . . ¥-123.00 (D) 十進(jìn)制的:. . . . . . . . . -123 (E) 科學(xué)的: . . . . . . . -1.234500E+002Yes (F) 定點(diǎn):. . . . . . . -123.45 (G) 一般的:. . . . . . . . . -123 ?(default):. . . . . . . . -123 (default = 'G') (N) 數(shù)字: . . . . . . . . . -123.00 (P) 百分比:. . . . . . . . . -12,345.00% (R) 往返的: . . . . . . . -123.45 (X) 十六進(jìn)制的:. . . . . . . FFFFFF85 |
1.2: 以各種方式,設(shè)置當(dāng)前日期的格式的演示
DateTime thisDate = DateTime.Now;
Console.WriteLine("標(biāo)準(zhǔn)日期時(shí)間格式說(shuō)明符");
Console.WriteLine("(d) 短日期: . . . . . . . {0:d}\n"
+"(D) 長(zhǎng)日期:. . . . . . . . {0:D}\n"
+"(t) 短時(shí)間: . . . . . . . {0:t}\n"
+"(T) 長(zhǎng)時(shí)間:. . . . . . . . {0:T}\n"
+"(f) 全日期/短時(shí)間: . . {0:f}\n"
+"(F) 全日期/長(zhǎng)時(shí)間:. . . {0:F}\n"
+"(g) 一般日期/短時(shí)間:. {0:g}\n"
+"(G) 一般日期/長(zhǎng)時(shí)間: . {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) 通用完整日期/時(shí)間: {0:U}\n"
+"(Y) 年: . . . . . . . . . . {0:Y}\n",thisDate);
標(biāo)準(zhǔn)日期時(shí)間格式說(shuō)明符 (d) 短日期: . . . . . . . 2022/9/7 (D) 長(zhǎng)日期:. . . . . . . . 2022年9月7日 (t) 短時(shí)間: . . . . . . . 21:52 (T) 長(zhǎng)時(shí)間:. . . . . . . . 21:52:22 (f) 全日期/短時(shí)間: . . 2022年9月7日 21:52 (F) 全日期/長(zhǎng)時(shí)間:. . . 2022年9月7日 21:52:22 (g) 一般日期/短時(shí)間:. 2022/9/7 21:52 (G) 一般日期/長(zhǎng)時(shí)間: . 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) 通用完整日期/時(shí)間: 2022年9月7日 13:52:22 (Y) 年: . . . . . . . . . . 2022年9月 |
2: ReadLine()方法使用舉例
Console.WriteLine("請(qǐng)輸入碼農(nóng)的姓名:");
string name = Console.ReadLine();
Console.WriteLine("請(qǐng)輸入所在996公司:");
string Company= Console.ReadLine();
Console.WriteLine("{0}碼農(nóng)在{1}苦逼擼代碼", name, Company);
運(yùn)行結(jié)果:
請(qǐng)輸入碼農(nóng)的姓名: 猿人 請(qǐng)輸入所在996公司: 碼廠 猿人碼農(nóng)在碼廠苦逼擼代碼 |
其他相關(guān)信息
1、控制臺(tái)輸出信息:
Console.Write("Hello World");//沒(méi)有換行
Console.WriteLine("Hello World");//換行
// {0}插值,占個(gè)位置,模板字符串, {index索引}
Console.WriteLine("{0}會(huì)在控制臺(tái)上顯示一段輸出:{0},{1}", "ABC", "abc");
Console.BackgroundColor = ConsoleColor.Red;//輸出后背景顏色
Console.ForegroundColor = ConsoleColor.Green;//輸出后字體顏色
Console.Read();// 讀取一行,以回車結(jié)束,不換行
Console.ReadLine(); // 讀取一行,以回車結(jié)束
Console.ReadKey(); // 讀取一個(gè)鍵
Console.Clear(); // 清屏
2、向控制臺(tái)輸入信息:
Console.WriteLine("請(qǐng)輸入您的姓名?");
string myName = Console.ReadLine();
Console.WriteLine("請(qǐng)輸入您的年齡?");
string myAge = Console.ReadLine();
// 模板字符串的兩種應(yīng)用: {index} $"{變量名稱}"
Console.WriteLine("你輸入的姓名:{0},你輸入的年齡:{1}", myName, myAge);
Console.WriteLine($"你輸入的姓名:{myName},你輸入的年齡:{myAge}");//常用方法
該文章在 2025/2/6 12:16:32 編輯過(guò)