.NET 中的主控台應用程式

.NET 應用程式可以使用 System.Console 類別從主控台讀取字元,以及將字元寫入主控台。 來自主控台的資料會從標準輸入資料流讀取,要傳送到主控台的資料會寫入至標準輸出資料流,而傳送給主控台的錯誤資料則會寫入至標準錯誤輸出資料流。 在應用程式啟動時,這些資料流會自動與主控台產生關聯,並且分別表示為 InOutError 屬性。

Console.In 屬性的值是一個 System.IO.TextReader 物件,而 Console.OutConsole.Error 屬性的值則為 System.IO.TextWriter 物件。 您可以使這些屬性與不代表主控台的資料流產生關聯,讓您能夠替輸入或輸出將資料流指向不同位置。 例如,您可以將 Console.Out 屬性設定為 System.IO.StreamWriter,這樣會透過 Console.SetOut 方法封裝 System.IO.FileStream,藉此將輸出重新導向至檔案。 Console.InConsole.Out 屬性不需要參考相同資料流。

注意

如需建置主控台應用程式的詳細資訊 (含 C#、Visual Basic 及 C++ 的範例),請參閱 Console 類別的文件。

因為沒有可以將資訊寫入的主控台,所以如果主控台不存在 (例如在 Windows Forms 應用程式中) 的話,將看不到寫入標準輸出資料流的輸出。 將資訊寫入不可存取的主控台不會導致引發例外狀況。 (您可以隨時將應用程式類型變更為主控台應用程式,例如在 Visual Studio 中的專案屬性頁面中)。

System.Console 類別具有可以從主控台讀取個別字元或整行的方法。 其他方法會轉換資料和格式字串,並接著將格式化的字串寫到主控台。 如需格式化字串的詳細資訊,請參閱格式化類型

提示

主控台應用程式缺乏預設會啟動的訊息幫浦 (Message Pump)。 因此,對 Microsoft Win32 計時器的主控台呼叫可能會失敗。

另請參閱