Я запускаю консольное приложение в Netbeans, которое запрашивает ввод пользователя, проверяет ввод и выводит сообщение об ошибке, если вход не прошел проверку и повторные запросы. Сообщение об ошибке, которое я установил для печати в красном тексте за this answer. Он отлично работает, за исключением одной проблемы.Настройка цвета текста ввода пользователя после печати сообщения ANSI?
После того, как программа запросит второй вход, учитывая, что первый вход недействителен, пользовательские входы, следующие за этим сообщением об ошибке, имеют тот же цвет, что и сообщение об ошибке.
Например, пользователь ввел недопустимый ввод. Они снова вводят свой ввод после сообщения об ошибке. Он должен печатать в цветном тексте по умолчанию (черный в моей версии), но вместо этого он печатается как красный текст.
Есть ли способ, в котором я должен закрыть применение цветового кода ANSI на мой текст? Конец тега?
Код:
public static void main(String[] args)
{
//Initialize keyboard input
Scanner keyboard = new Scanner(System.in);
//Print prompt to screen
System.out.println("User input prompt goes here: ");
//Store user input
String inputGot = keyboard.nextLine();
//Print a dummy error message
System.out.println("\u001B[31m" + "This is an error of some sort. "
+ "Please re-enter input: ");
//Rerun input prompt (this would be looped in the real program)
System.out.println("User input prompt goes here: ");
//Store user input
inputGot = keyboard.nextLine();
}
Это исправлено. Очень признателен! –