Я создаю консольное приложение, которое будет запрашивать у пользователя ton ввести имя пользователя и пароль, сохранить их в объекте как строки и сохранить объект в связанном по ссылке ссылке.Пользовательский ввод консоли маски
Есть ли способ, когда пользователь вводит свой пароль, он будет отображаться как «*****» вместо «12345», в то время как система (очевидно) читает «12345»?
У меня есть класс с методами, подходящими для ввода пользователем.
System.out.println("Username: ");
String un = EasyIn.getString();
System.out.println("Password: ");
String pw = reader.getString();
System.out.println("Repeat Password: ");
String pwRepeat = reader.getString();
//and then go on to confirm that the passwords match and store them in the object etc
Стандартный 'java.io.Console' может скрывать только пароль, но он не может маскировать символы ввода звездочками. Внедрение маскировки со звездочками с нуля может быть утомительным (и не переносимым). Поэтому взгляните на библиотеку JLine (http://jline.sourceforge.net). Этот фрагмент поможет 'String password = new jline.ConsoleReader(). ReadLine (новый символ ('*'));' – flaz14