I have a console application that after performing its tasks, must give feedback to the user, such as \"operation completed\" or \"operation failed\" and the detailed error.
I used simple hack, asking windows to use cmd commands , and send it to null.
// Class for Different hacks for better CMD Display
import java.io.IOException;
public class CMDWindowEffets
{
public static void getch() throws IOException, InterruptedException
{
new ProcessBuilder("cmd", "/c", "pause > null").inheritIO().start().waitFor();
}
}
You can just use nextLine();
as pause
import java.util.Scanner
//
//
Scanner scan = new Scanner(System.in);
void Read()
{
System.out.print("Press any key to continue . . . ");
scan.nextLine();
}
However any button you press except Enter
means you will have to press Enter after that but I found it better than scan.next();
I've put in what x4u said. Eclipse wanted a try catch block around it so I let it generate it for me.
try {
System.in.read();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
It can probably have all sorts of bells and whistles on it but I think for beginners that want a command line window not quitting this should be fine.
Also I don't know how common this is (this is my first time making jar files), but it wouldn't run by itself, only via a bat file.
java.exe -jar mylibrary.jar
The above is what the bat file had in the same folder. Seems to be an install issue.
Eclipse tutorial came from: http://eclipsetutorial.sourceforge.net/index.html
Some of the answer also came from: Oracle Thread
public static void main(String args[])
{
Scanner s = new Scanner(System.in);
System.out.println("Press enter to continue.....");
s.nextLine();
}
This nextline
is a pretty good option as it will help us run next line whenever the enter key is pressed.
In Java this would be System.in.read()
The problem with Java console input is that it's buffered input, and requires an enter key to continue.
There are these two discussions: Detecting and acting on keyboard direction keys in Java and Java keyboard input parsing in a console app
The latter of which used JLine to get his problem solved.
I personally haven't used it.