我需要创建一个简单的Java程序,将其输出写入cmd(命令提示符)窗口并从那里读取用户的输入。
当我使用标准System.out.println
从IDE运行代码时,它在IDE(我使用intelliJ)控制台视图上显示输出。
我想这是一个简单的问题,这里已有答案,但我做了几次搜索,但找不到合适的解决方案。
答案 0 :(得分:1)
那就是它。如果您使用cmd而不是IDE运行它,您的程序现在将输出到cmd。 对于输入,您可以使用扫描仪读取用户输入。或者只是让用户在运行程序之前输入所有内容,并在逻辑中包含main方法的args来处理用户的输入。
答案 1 :(得分:1)
为你演示:)
public class testCMD {
public static void main(String[] args) {
testCMD obj = new testCMD();
System.out.println("Press command here:");
Scanner keyboard = new Scanner(System.in);
String command = keyboard.next();
//String command = "msconfig";
String output = obj.executeCommand(command);
System.out.println(output);
}
private String executeCommand(String command) {
StringBuffer output = new StringBuffer();
Process p;
try {
p = Runtime.getRuntime().exec(command);
p.waitFor();
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = "";
while ((line = reader.readLine()) != null) {
output.append(line + "\n");
}
} catch (Exception e) {
e.printStackTrace();
}
return output.toString();
}
}