2017-02-02 13 views
1

タイトルによれば、コンソールウィンドウのサイズを特定の形状に変更すると、Console.Clear()を呼び出すとIOExceptionがスローされます。ここに私の例のコードは次のとおりです。リサイズした状態でコンソールウィンドウをクリアするとIOExceptionが発生する

using System; 
using System.Threading; 
class Program 
{ 
    static void Main() 
    { 
     for (int i = 0; ;) 
     { 
      Console.Write(i++); 
      Thread.Sleep(250); 
      Console.Clear(); 
     } 
    } 
} 

そして、ここではこれを再現する方法を実証するためのちょっといいGIFです:

enter image description here

それがになっていた場合さて、私は、なぜこれが起こっているか見当もつかない起こって、これを修正/防止する方法はまったくありません。誰でも説明できますか?すごく興味がある!

ありがとうございます。

+0

マイコンソールウィンドウが文句を言わない、私はあなたが行うことを高く0ラインまで行ってみましょう - という事実は、あなたがその理由だろうん。 – BugFinder

+0

@BugFinder好奇心が強い、あなたはどんなOSですか? – Metoniem

+0

私は7に勝っています.. – BugFinder

答えて

0

問題は、1次元が0のコンソールをクリアしようとしていることです。私は、クリアが左上の位置にカーソルを置こうとしていると思います。

あなただけConsole.Clear前にチェックを追加し解決することができます:鉱山はBARF doesntのよう

static void Main() 
{ 
    for (int i = 0; ;) 
    { 
     Console.Write(i++); 
     Thread.Sleep(250); 
     if (Console.WindowHeight>0 && Console.WindowWidth>0) 
      Console.Clear(); 
    } 
} 
+0

ええと、私は 'Console.SetCursorPosition()'でこれを再現しようとしています。編集:それはあなたが正しいと思われます。私の問題が解決されたように見えるので、私はこの答えを受け入れるでしょう!ありがとう:-) – Metoniem

関連する問題