App console in .NET

Le applicazioni .NET possono usare la classe System.Console per la lettura e scrittura di caratteri nella console. I dati provenienti dalla console vengono letti dal flusso di input standard, mentre i dati inviati alla console vengono scritti nel flusso di output standard e i dati di errori inviati alla console vengono scritti nel flusso di output standard degli errori. I flussi vengono associati automaticamente alla console in fase di avvio dell'applicazione e vengono presentati rispettivamente come proprietà In, Out ed Error.

Il valore della proprietà Console.In è un oggetto System.IO.TextReader, mentre i valori delle proprietà Console.Out e Console.Error sono oggetti System.IO.TextWriter. È possibile associare queste proprietà ai flussi che non rappresentano la console, rendendo possibile l'indirizzamento del flusso a una posizione diversa per l'input e l'output. È possibile ad esempio reindirizzare l'output in un file impostando la proprietà Console.Out su System.IO.StreamWriter, che incapsula un System.IO.FileStream tramite il metodo Console.SetOut. Le proprietà Console.In e Console.Out non devono fare necessariamente riferimento allo stesso flusso.

Nota

Per altre informazioni sulla creazione di applicazioni console, inclusi esempi in C#, Visual Basic e C++, vedere la documentazione per la classe Console.

Se la console non esiste, ad esempio in Windows Forms Application, l'output scritto nel flusso di output standard non sarà visibile, in quanto non è disponibile alcuna console in cui scrivere le informazioni. La scrittura di informazioni in una console inaccessibile non genera un'eccezione. (È sempre possibile modificare il tipo di applicazione in Applicazione console, ad esempio, nelle pagine delle proprietà del progetto in Visual Studio).

La classe System.Console include metodi che consentono di leggere singoli caratteri o intere righe dalla console. Altri metodi consentono di convertire dati e formattare stringhe, quindi di scrivere le stringhe formattate nella console. Per altre informazioni sulle stringhe di formattazione, vedere Tipi di formattazione.

Suggerimento

Le applicazioni console non dispongono di un message pump avviato per impostazione predefinita. È pertanto possibile che le chiamate ai timer Win32 Microsoft non riescano.

Vedi anche