Java.io.Console class in Java
Last Updated :
11 Sep, 2023
The Java.io.Console class provides methods to access the character-based console device, if any, associated with the current Java virtual machine. The Console class was added to java.io by JDK 6.
Important Points:
Important Methods:
- writer : Retrieves the unique PrintWriter object associated with this console.
Syntax:
public PrintWriter writer()
Returns: The printwriter associated with this console
- reader : Retrieves the unique Reader object associated with this console.
Syntax:
public Reader reader()
Returns: The reader associated with this console
- format : Writes a formatted string to this console's output stream using the specified format string and arguments.
Syntax:
public Console format(String fmt, Object... args)
Parameters:
fmt - A format string as described in Format string syntax
args - Arguments referenced by the format specifiers in the format string.
If there are more arguments than format specifiers, the extra arguments are ignored.
Returns:This console
Throws: IllegalFormatException
- printf : A convenience method to write a formatted string to this console's output stream using the specified format string and arguments.
Syntax:
public Console printf(String format, Object... args)
Parameters:
format - A format string as described in Format string syntax.
args - Arguments referenced by the format specifiers in the format string.
If there are more arguments than format specifiers, the extra arguments are ignored.
Returns:This console
Throws:IllegalFormatException
- readLine : Provides a formatted prompt, then reads a single line of text from the console.
Syntax:
public String readLine(String fmt,Object... args)
Parameters:
fmt - A format string as described in Format string syntax.
args - Arguments referenced by the format specifiers in the format string.
If there are more arguments than format specifiers, the extra arguments are ignored.
Returns: A string containing the line read from the console,
not including any line-termination characters, or null
if an end of stream has been reached.
Throws:
IllegalFormatException
IOError - If an I/O error occurs.
- readLine : Reads a single line of text from the console.
Syntax:
public String readLine()
Returns: A string containing the line read from the console,
not including any line-termination characters, or null
if an end of stream has been reached.
Throws: IOError
- readPassword: Provides a formatted prompt, then reads a password or passphrase from the console with echoing disabled.
Syntax:
public char[] readPassword(String fmt,Object... args)
Parameters:
fmt - A format string as described in Format string syntax for the prompt text.
args - Arguments referenced by the format specifiers in the format string.
Returns: A character array containing the password or passphrase read
from the console, not including any line-termination characters, or null
if an end of stream has been reached.
Throws:
IllegalFormatException
IOError
- readPassword : Reads a password or passphrase from the console with echoing disabled
Syntax:
public char[] readPassword()
Returns: A character array containing the password or passphrase
read from the console, not including any line-termination characters, or null
if an end of stream has been reached.
Throws:IOError
- flush : Flushes the console and forces any buffered output to be written immediately .
Syntax:
public void flush()
Specified by: flush in interface Flushable
Program:
Java
// Java Program to demonstrate Console Methods
import java.io.*;
class ConsoleDemo
{
public static void main(String args[])
{
String str;
//Obtaining a reference to the console.
Console con = System.console();
// Checking If there is no console available, then exit.
if(con == null)
{
System.out.print("No console available");
return;
}
// Read a string and then display it.
str = con.readLine("Enter your name: ");
con.printf("Here is your name: %s\n", str);
//to read password and then display it
System.out.println("Enter the password: ");
char[] ch=con.readPassword();
//converting char array into string
String pass = String.valueOf(ch);
System.out.println("Password is: " + pass);
}
}
Output:
Enter your name: Nishant Sharma
Here is your name: Nishant Sharma
Enter the password:
Password is: dada
Note: System.console() returns null in an online IDE