Megosztás a következőn keresztül:


Konzolalkalmazások a .NET-ben

A .NET-alkalmazások az System.Console osztály használatával olvashatnak karaktereket, és írhatnak karaktereket a konzolra. A rendszer beolvassa a konzol adatait a standard bemeneti adatfolyamból, a konzolra érkező adatokat a standard kimeneti adatfolyamba, a konzolra érkező hibaadatokat pedig a standard hibakimeneti adatfolyamba írja. Ezek a streamek az alkalmazás indításakor automatikusan a konzolhoz vannak társítva, és azok Ina , Outés Error tulajdonságokként jelennek meg.

A tulajdonság értéke Console.In objektum System.IO.TextReader , míg a Console.OutConsole.Error tulajdonságok System.IO.TextWriter objektumok. Ezeket a tulajdonságokat olyan streamekhez társíthatja, amelyek nem a konzolt jelölik, így a streamet más helyre irányíthatja a bemenet vagy a kimenet érdekében. A kimenetet például átirányíthatja egy fájlba úgy, hogy a Console.Out tulajdonságot egy System.IO.StreamWriter, a metódussal beágyazó System.IO.FileStream tulajdonságra állítja Console.SetOut . A Console.In tulajdonságoknak Console.Out nem kell ugyanarra a streamre hivatkoznia.

Feljegyzés

A konzolalkalmazások létrehozásával kapcsolatos további információkért, beleértve a C#, a Visual Basic és a C++ példákat, tekintse meg az osztály dokumentációját Console .

Ha a konzol nem létezik, például egy Windows Forms-alkalmazásban, a standard kimeneti streambe írt kimenet nem lesz látható, mert nincs olyan konzol, amelybe írhatja az adatokat. Az információk elérhetetlen konzolra való írása nem okoz kivételt. (Az alkalmazás típusát bármikor módosíthatjaKonzolalkalmazás például a Visual Studio projekttulajdonság-lapjaiban).

A System.Console osztály olyan metódusokkal rendelkezik, amelyek beolvashatják az egyes karaktereket vagy a teljes sorokat a konzolról. Más metódusok átalakítják az adatokat és formázza a sztringeket, majd a formázott sztringeket a konzolra írják. További információ a formázási sztringekről: Formázási típusok.

Tipp.

A konzolalkalmazások alapértelmezés szerint nem rendelkeznek üzenetszivattyúval. Ezért előfordulhat, hogy a Microsoft Win32 időzítőkhöz intézett konzolhívások sikertelenek lesznek.

Lásd még