Delen via


High-Level Console I/O

De I/O-functies op hoog niveau bieden een eenvoudige manier om een stroom tekens te lezen van consoleinvoer of om een stroom tekens naar console-uitvoer te schrijven. Een leesbewerking op hoog niveau haalt invoertekens op uit de invoerbuffer van een console en slaat deze op in een opgegeven buffer. Een schrijfbewerking op hoog niveau haalt tekens uit een opgegeven buffer en schrijft deze naar een schermbuffer op de huidige cursorlocatie, waarbij de cursor naarmate elk teken wordt geschreven.

Met I/O op hoog niveau kunt u kiezen tussen de functies ReadFile en WriteFile en ReadConsole en WriteConsole . Ze zijn identiek, met uitzondering van twee belangrijke verschillen. De consolefuncties ondersteunen het gebruik van Unicode-tekens of de ANSI-tekenset via de A- en W-varianten van elke functie; de bestands-I/O-functies bieden geen ondersteuning voor Unicode, met uitzondering van UTF-8 ingesteld met de CP_UTF8 constante op de functies SetConsoleCP en SetConsoleOutputCP voordat ze worden gebruikt. De I/O-functies van het bestand kunnen ook worden gebruikt voor toegang tot bestanden, pijpen en seriƫle communicatieapparaten; de consolefuncties kunnen alleen worden gebruikt met consolegrepen. Dit onderscheid is belangrijk als een toepassing afhankelijk is van standaardgrepen die mogelijk zijn omgeleid.

Wanneer u een van beide functies op hoog niveau gebruikt, kan een toepassing de tekst- en achtergrondkleuren beheren die worden gebruikt om tekens weer te geven die vervolgens naar een schermbuffer worden geschreven met het voorkeursmechanisme dat via virtuele terminalreeksen wordt gebruikt. Een toepassing kan ook de consolemodi gebruiken die van invloed zijn op console-I/O op hoog niveau om de volgende eigenschappen in of uit te schakelen:

  • Echo van toetsenbordinvoer naar de actieve schermbuffer
  • Regelinvoer, waarbij een leesbewerking pas wordt geretourneerd als de ENTER-toets is ingedrukt
  • Automatische verwerking van toetsenbordinvoer voor het verwerken van regelterugloop, Ctrl+C en andere invoerdetails
  • Automatische verwerking van uitvoer voor het verwerken van regelterugloop, regelterugloop, backspaces en andere uitvoerdetails

Zie de volgende onderwerpen voor meer informatie: