Ich mache ein Textbearbeitungsprogramm (frag nicht, warum ich gerade programmiere, bin aber ziemlich neu dazu). Ich möchte eine Benutzereingabe erhalten (ich habe console.readline() versucht, wenn es bessere Befehle gibt, lass es mich wissen!), Stoppe aber sobald eine bestimmte Anforderung erfüllt ist (zum Beispiel in meinem aktuellen Fall, wenn die Eingabe ein Zeichen lang erreicht)).Wie man eine readline stoppt, wenn bestimmte Anforderungen erfüllt werden
So
input = ReadLine()
und einen Weg, es zu stoppen, etwas, als ob ich eine if-Anweisung in sie injiziert:
If input.length = 1
EndReadLine (or something like that)
Ich habe versucht, einen Weg zum Erfassen der Suche, wenn eine Taste gedrückt wird aber ich konnte nur die Erkennung für die Shift-Taste und solche Dinge finden, nicht Buchstaben & Nummern. Wenn es eine Möglichkeit gibt, Zeichen zu erkennen, wäre es sehr hilfreich :)
Analysieren/untersuchen, was der Benutzer eingibt und entsprechend handeln – Plutonix
Wie kann ich das tun? –
Das kann man nicht, zumindest nicht mit 'ReadLine()', da das ** blockt ** bis Enter gedrückt wird. Was Sie benötigen, ist [KeyAvailable()] (https://msdn.microsoft.com/en-us/library/system.console.keyavailable (v = vs.110) .aspx) und [ReadKey()] (https: //msdn.microsoft.com/en-us/library/x3h8xffw(v=vs.110).aspx) in einer engen Schleife ... aber das bedeutet, dass Sie die Anzeige dessen, was getippt wurde, verwalten und den Cursor manuell bewegen müssen . Dies ist wahrscheinlich schwieriger zu erreichen als Sie denken! –