なんだかGoodVibes

日々の勉強メモです。

コンソールでカーソル位置を設定して表示をする(SetCursorPosition)

コンソールで同じ位置にかつ前の値はクリアして
値を表示したいときありますよね。

3秒間のカウントダウンを表示するサンプルです。

// 初期のカーソル位置を保持する
var left = Console.CursorLeft;
var top = Console.CursorTop;

// カーソルの位置を設定
Console.SetCursorPosition(left, top);
Console.Write("3");
Thread.Sleep(1000);

Console.SetCursorPosition(left, top);
Console.Write("2");
Thread.Sleep(1000);

Console.SetCursorPosition(left, top);
Console.Write("1");
Thread.Sleep(1000);

Console.SetCursorPosition(left, top);
Console.Write("ドーン!");

カーソルの位置を取得、設定、表示
といった処理の書き方を知っていると
いろいろなサンプルに使えるので便利です。

途中でConsole.WriteLineを記載してしまうと
改行されてしまうので注意です。