El método readPassword() de la clase Console en Java es de dos tipos:
1. El método readPassword() de la clase Consola en Java se usa para leer una contraseña o frase de contraseña de la consola con el eco deshabilitado.
Sintaxis:
public char[] readPassword()
Parámetros: Este método no acepta ningún parámetro.
Valor devuelto: este método devuelve una array de caracteres que contiene la contraseña o frase de contraseña leída desde la consola. Devuelve nulo si la transmisión finaliza.
Excepciones: este método genera IOError si se produce un error de E/S.
Nota: System.console() devuelve nulo en un IDE en línea.
Los siguientes programas ilustran el método readPassword() en la clase Consola en el paquete IO:
Programa 1:
// Java program to illustrate // Console readPassword() method import java.io.*; public class GFG { public static void main(String[] args) { // Create the console object Console cnsl = System.console(); if (cnsl == null) { System.out.println( "No console available"); return; } // Read line String str = cnsl.readLine( "Enter username : "); // Print username System.out.println( "Username : " + str); // Read password // into character array char[] ch = cnsl.readPassword( "Enter password : "); // Print password System.out.println( "Password : " + ch); } }
Programa 2:
// Java program to illustrate // Console readPassword() method import java.io.*; public class GFG { public static void main(String[] args) { // Create the console object Console cnsl = System.console(); if (cnsl == null) { System.out.println( "No console available"); return; } // Read line String str = cnsl.readLine( "Enter username : "); // Print username System.out.println( "Username : " + str); // Read password // into character array char[] ch = cnsl.readPassword( "Enter password : "); // Print password System.out.println( "Password : " + ch); } }
2. El método readPassword(String, Object) de la clase Console en Java se usa para leer una contraseña o frase de contraseña de la consola al proporcionar un aviso formateado. Devuelve la contraseña en la array de caracteres.
Sintaxis:
public char[] readPassword(String fmt, Object... args)
Parámetros: Este método acepta dos parámetros:
- fmt – Representa el formato de la string.
- args : representa los argumentos a los que hacen referencia los especificadores de formato en el formato de string.
Valor devuelto: este método devuelve la array de caracteres que contiene la contraseña o la frase de contraseña leída desde la consola. Devuelve nulo si finaliza la transmisión.
Excepciones:
- IllegalFormatException : este método lanza IllegalFormatException si el formato de string contiene una sintaxis ilegal o un especificador de formato no es compatible con los argumentos proporcionados o los argumentos son insuficientes dada la string de formato u otras condiciones que son ilegales.
- IOError : este método arroja IOError si se produce un error de E/S.
Los siguientes programas ilustran el método readPassword(String, Object) en la clase Consola en el paquete IO:
Programa 1:
// Java program to illustrate // Console readPassword(String, Object) method import java.io.*; public class GFG { public static void main(String[] args) { // Create the console object Console cnsl = System.console(); if (cnsl == null) { System.out.println( "No console available"); return; } String fmt = "%2$5s %3$10s%n"; // Read line String un = cnsl.readLine( fmt, "Enter", "Username : "); // Print username System.out.println( "Username : " + un); // Read password // into character array char[] pwd = cnsl.readPassword( fmt, "Enter", "Password : "); // Print password System.out.println( "Password : " + pwd); } }
Programa 2:
// Java program to illustrate // Console readPassword(String, Object) method import java.io.*; public class GFG { public static void main(String[] args) { // Create the console object Console cnsl = System.console(); if (cnsl == null) { System.out.println( "No console available"); return; } String fmt = "%2$5s %3$10s%n"; // Read line String un = cnsl.readLine( fmt, "Enter", "Username : "); // Print username System.out.println( "Username : " + un); // Read password // into character array char[] pwd = cnsl.readPassword( fmt, "Enter", "Password : "); // Print password System.out.println( "Password : " + pwd); } }
Referencias:
1. https://docs.oracle.com/javase/10/docs/api/java/io/Console.html#readPassword()
2. https://docs.oracle.com/javase/10/docs /api/java/io/Console.html#readPassword(java.lang.String, java.lang.Object…)