Console 類別
隸屬 System 命名空間,為 .NET 基礎類別程式庫(BCL)的一員
負責主控台視窗的文字讀寫操作,提供兩種輸出函式:Write() / WriteLine()
在 Visual Studio 中,將游標移到 Console 文字上方,按下 F12 鍵,即可檢視此類別的定義

隨後會跳轉至 Console 的中繼資料檢視畫面。這並非原始程式碼,而是 VS 內建的反編譯功能,可檢視該類別的所有方法、類別名稱、參數等成員資訊。

在 Console 中繼資料頁面,能看見可供呼叫的 Write() 與 WriteLine() 函式。

Console.Write ()
輸出文字後不會自動換行,連續多次輸出的內容會接續在同一列顯示
// 簡寫寫法(開頭有 using System 就可省略 System. 前綴)
Console.Write("Hello everyone.");
// 完整限定寫法
System.Console.Write("This is foxdevelop.");
System.Console.Write("This is com.");
System.Console.Write("good luck.");Code language: JavaScript (javascript)
將上方程式碼貼到 Main 方法內執行。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloDemo
{
internal class Program
{
static void Main(string[] args)
{
// 簡寫寫法(開頭有 using System 就可省略 System. 前綴)
Console.Write("Hello everyone.");
// 完整限定寫法
System.Console.Write("This is foxdevelop.");
System.Console.Write("This is com.");
System.Console.Write("good luck.");
}
}
}Code language: JavaScript (javascript)
執行輸出結果
Hello everyone.This is foxdevelop.This is com.good luck.Code language: CSS (css)
文字常數必須使用雙引號包覆,不可使用單引號。
Console.WriteLine ()
功能與 Write 完全相同,差異在輸出結尾會自動加上換行符號,每一次輸出內容獨占一列。
簡單來說,每次輸出完畢後,游標會自動換列,移至下一行開頭等待後續輸出。
Console.WriteLine("Hello everyone.");
Console.WriteLine("This is foxdevelop.");
Console.WriteLine("This is com.");
Console.WriteLine("good luck.");Code language: JavaScript (javascript)
執行輸出結果

這次內容各自換行了,因為每段文字輸出後游標都會跳到下一列。
格式化字串
(舊版佔位語法,目前多數舊專案仍持續使用)
- 方法參數格式:
Console.WriteLine(格式化字串, 替換值0, 替換值1, ...) - 第一個參數固定為格式化字串,以
{數字}作為替換標記 - 標記數字從
0開始編號,依序對應後方傳入的各個替換值 - 多個替換參數以逗號分隔
static void Main(string[] args)
{
Console.WriteLine(" {0} + {1} = {2}", 9, 6,9 + 6);
}Code language: JavaScript (javascript)
執行輸出結果
9 + 6 = 15
範例中第一個字串「 {0} + {1} = {2}」包含三個佔位標記,數字順序對應後面三個參數:9、6 以及兩數相加的結果 15,程式會自動將數值填入 {0}、{1}、{2} 對應位置。
字串內插
C# 6.0 起新增的簡潔語法,可直接在佔位符內撰寫變數
在字串開頭加上 $ 符號啟用內插功能,大括號 {} 當中可直接書寫變數名稱,編譯器自動代入變數數值,不需額外傳入替換參數
static void Main(string[] args)
{
double pi = 3.14;
string webSite = "foxdevelop.com";
Console.WriteLine($"The Pi is {pi} and the website is {webSite}.");
}Code language: JavaScript (javascript)

執行輸出結果
The Pi is 3.14 and the website is foxdevelop.com.Code language: CSS (css)
多個變數混用
下方範例示範在同一組字串模板內放入多個變數佔位符
int latitude = 36;
int longitude = 17;
string north = "N", east = "E", south = "S";
Console.WriteLine($"緯度 {latitude}{north}, 經度 {longitude}{east}");
Code language: JavaScript (javascript)
執行輸出結果
緯度 36N, 經度 17E
使用注意事項
複雜的內插字串容易搞混變數順序,兩種語法都建議熟練掌握;現場仍有大量專案維持舊版格式化寫法。
主控台文字輸出操作