C# Windows コンソール アプリで現在の行を更新するにはどうすればよいですか? 質問する

C# Windows コンソール アプリで現在の行を更新するにはどうすればよいですか? 質問する

C# で Windows コンソール アプリを構築する場合、現在の行を拡張したり、新しい行に移動したりせずにコンソールに書き込むことは可能ですか? たとえば、プロセスが完了にどれだけ近づいているかを表すパーセンテージを表示する場合、カーソルと同じ行の値を更新し、各パーセンテージを新しい行に配置する必要はありません。

これは「標準」の C# コンソール アプリで実行できますか?

ベストアンサー1

コンソールにのみ印刷する場合、"\r"カーソルは現在の行の先頭に戻り、書き直すことができます。これでうまくいくはずです:

for(int i = 0; i < 100; ++i)
{
    Console.Write("\r{0}%   ", i);
}

数字の後にいくつかのスペースがあることに注目してください。これは、前にあったものがすべて消去されることを確認するためです。また、行末に「\n」を追加したくないので、 の代わりに
を使用していることにも注意してください。Write()WriteLine()

おすすめ記事