.NET でのコンソール アプリ

.NET アプリケーションは、System.Console クラスを使用し、コンソールから文字を読み取り、コンソールに文字を書き込むことができます。 コンソールからのデータは標準入力ストリームから読み取られ、コンソールへのデータは標準出力ストリームに書き込まれ、コンソールへのエラー データは標準エラー出力ストリームに書き込まれます。 これらのストリームは、アプリケーションの起動時に自動的にコンソールに関連付けられ、それぞれ In プロパティ、Out プロパティ、および Error プロパティとして示されます。

Console.In プロパティの値が System.IO.TextReader オブジェクトであるのに対し、Console.Out および Console.Error プロパティの値は System.IO.TextWriter オブジェクトです。 これらのプロパティを、コンソールを表さないストリームに関連付けることがができます。これにより、ストリームの出力先または入力元として異なる位置を指定できます。 たとえば、Console.Out プロパティを Console.SetOut メソッドで System.IO.FileStream をカプセル化する System.IO.StreamWriter に設定することにより、出力をファイルにリダイレクトできます。 Console.In プロパティと Console.Out プロパティとが同じストリームを参照する必要はありません。

Note

コンソール アプリケーション (C#、Visual Basic、および C++ の例を含む) をビルドする方法の詳細については Console クラスのドキュメントを参照してください。

Windows フォーム アプリケーションなどでコンソールが存在しない場合には、情報を書き込む先のコンソールがないため、標準出力ストリームに書き込まれた出力を参照できません。 アクセスできないコンソールに情報を書き込んでも、例外は発生しません。 (Visual Studio のプロジェクト プロパティ ページなどで、アプリケーションの種類をコンソール アプリケーションにいつでも変更できます)。

System.Console クラスには、コンソールから個々の文字または行全体を読み取ることができるメソッドがあります。 その他のメソッドは、まずデータと書式指定文字列を変換してから、書式設定された文字列をコンソールに書き込みます。 書式指定文字列の詳細については、型の書式設定に関するページを参照してください。

ヒント

コンソール アプリケーションには、既定で起動されるメッセージ ポンプがありません。 したがって、コンソールが Microsoft Win32 タイマーを呼び出すと、失敗する場合があります。

参照