Сотрите только один уже напечатанный символ из консоли в c # - PullRequest
0 голосов
/ 08 ноября 2018

Итак, я хочу создать скрипт, который сначала распечатывает значения из (довольно большого) 2D-массива, а затем меняет один символ, стирая его и печатая новый без очистки всей консоли и перерисовки, потому что это создает мерцание, которое очень раздражает, когда я хочу часто вносить изменения. Так есть ли способ заменить или стереть один символ, который уже был напечатан, или любой другой эффективный способ сделать это? Я просто не хочу мерцать.

Ответы [ 2 ]

0 голосов
/ 08 ноября 2018

переместите курсор и напишите пробел "". (Или любой символ, который вы хотите использовать в качестве замены.)

0 голосов
/ 08 ноября 2018

Чтобы удалить последний ввод символов в консоли, вы можете использовать следующую команду:

Console.Write ( "\ б");

Однако, если вы пытаетесь удалить символ в середине строки, вам нужно будет сделать какой-нибудь хитрый возврат к нужному символу, а затем перепечатать остальную часть строки. Вы можете написать цикл для возврата на задний план до тех пор, пока символ, который вы хотите удалить, добавить удаленные символы в стек и вытолкнуть их, чтобы переписать его.

Второй подход был бы очень неэффективным из-за медленных команд консоли, а также из-за неправильного использования команды возврата на консоль.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...