PR

 コンソールからユーザーのキー入力を取得したり、コンソールに文字を出力するアプリケーションを作るには、Consoleクラスを使う。

 コンソールとは、OSが備えるウインドウであり、テキスト・ベースで情報を表示したり、ユーザーからの入力を受け付けるユーザー・インタフェースである。Windowsのコンソールは「コマンド プロンプト」ウィンドウと呼ばれ、このウィンドウ上ではMS-DOSのコマンドを実行できます。

 コンソール・アプリケーションを作成するには、アプリケーションの新規作成時に「コンソール・アプリケーション」を選択する。

 既定でInプロパティの値はSystem.IO.TextReaderオブジェクトに、また、OutプロパティおよびErrorプロパティの値はSystem.IO.TextWriterオブジェクトになっている。これらのプロパティを、コンソール以外のストリーム(ファイル ストリームなど)に関連付けることもできる。

 Consoleクラスのメンバは、ストリームを、ファイルなどにリダイレクトすると例外がスローされる場合がある。標準ストリームをリダイレクトする場合は、System.IO.IOExceptionをキャッチする処理をプログラムに追加する必要がある。

 Consoleクラスには、コンソールから文字を一つずつ読み込むメソッドや、行全体を読み込むメソッドがある。そのほか、値型、文字配列、オブジェクトのインスタンスを書式付きまたは書式なし文字列に自動的に変換した後、必要に応じて行終端文字列を追加してコンソールに出力する、といった書き込みメソッドがある。また、Consoleクラスには、画面バッファ、コンソール・ウィンドウ、およびカーソルのサイズを取得/設定するメソッドや、コンソール・ウィンドウおよびカーソルの位置を移動させたり、前面色および背景色を変更したり、コンソールのタイトル バーに表示されるテキストを変更したり、ビープ音を出したり、といったさまざまなメソッドおよびプロパティがある。

サンプルコードを見る


名前空間
System
対応バージョン
.NET Framework 2.0、1.1、1.0
.NET Compact Framework 2.0、1.0
主なプロパティ
BackgroundColor
コンソールの背景色を設定、または取得する。

CapsLock
CapsLockがオンかオフかを示す値を取得する。

CursorVisible
カーソルを表示するかどうかを示す値を設定、または取得する。

Error
スタティック標準エラー出力ストリームを取得する。

ForegroundColor
コンソールの前景色を取得、または設定する。

In
スタティック標準入力ストリームを取得する。

InputEncoding
スタティックコンソールが入力内容の読み取り時に使用するエンコーディングを設定、または取得する。

KeyAvailable
スタティックキーが押されたかどうか、つまり、押されたキーが入力ストリームに存在するかどうかを示す値を取得する。

LargestWindowHeight
スタティック現在のフォントおよび画面解像度に基づいて、コンソールウィンドウの最大行数を取得する。

LargestWindowWidth
スタティック現在のフォントおよび画面解像度に基づいて、コンソールウィンドウの最大列数を取得する。

NumberLock
スタティックNumLockがオンかオフかを示す値を取得する。

Out
スタティック標準出力ストリームを取得する。

OutputEncoding
スタティックコンソールが出力内容の書き込み時に使用するエンコーディングを設定、または取得する。

Title
スタティックコンソールのタイトルバーに表示するタイトルを設定、または取得する。

WindowHeight
スタティックコンソールウィンドウ領域の高さを設定、または取得する。

WindowLeft
スタティックコンソールウィンドウ領域の左端の位置を、画面バッファに対する相対位置として取得または設定する。

WindowTop
スタティックコンソールウィンドウ領域の上端の位置を、画面バッファに対する相対位置として取得または設定する。

WindowWidth
スタティックコンソールウィンドウの幅を設定、または取得する。

主なメソッド
Beep
コンソールのスピーカーからビープ音を出す。

Clear
コンソールバッファおよび対応するコンソールウィンドウをクリアする。

SetError
Errorプロパティを設定する。

SetIn
Inプロパティを設定する。

SetOut
Outプロパティを設定する。

Read
標準入力ストリームから次の文字を読み取る。

ReadKey
ユーザーによって押された次の文字キーまたはファンクションキーを取得する。

ReadLine
標準入力ストリームから次の1行分の文字を読み取る。

ResetColor
コンソールの前景色および背景色を既定値に設定する。

Write
指定した値のテキスト形式を標準出力ストリームに書き込む。

WriteLine
指定したデータを標準出力ストリームに書き込み、続けて現在の行終端記号を書き込む。