【发布时间】:2013-11-27 15:04:16
【问题描述】:
我确实在理解 Java 中的控制台时遇到了一些严重的问题。我正在运行 Eclipse,我想编写一个小程序,它会向控制台提示一些文本消息,并从中接收一些字符串作为输入参数。问题是:当我运行我的程序时,它会正确打开命令行窗口,但我的输出只打印在 Eclipse-Console 上。 在某种程度上,我确实理解为什么会这样。命令行窗口需要命令,而不仅仅是某种字符串或其他东西。但是我如何设法将我的字符串输出到命令行窗口并从中读取字符串,而不仅仅是命令。 还是我做错了?我是否必须打开另一个“控制台”来提示我的所有消息并且我可以从中读取用户编写的字符串?
这是我用来在启动时打开命令行窗口的代码:
public static void main(String args[]) throws Exception {
Process process = new ProcessBuilder(new String[] { "cmd", "/C",
"start", "cmd" }).start();
System.out.println(process.waitFor());
编辑:我仍然没有设法让它工作。不知何故,当我编译程序并运行它时,它正确地打开了一个命令窗口,但那里没有发布任何消息。好像 "System.out.println("xxx") 对这个窗口没有任何影响。
【问题讨论】:
-
Eclipse 中基本上会有一个控制台。如果你运行你的程序,它会在同一个控制台上询问/提示一些输入。 Enter 点击后,您将在同一控制台上获得输出。就是这样。。
-
我想说预期/正常的方式是在从 Eclipse 内部运行时使用 Eclipse 控制台,在从命令行运行时使用命令行控制台。您必须更改任何内容才能使其正常工作,因此我们需要查看您的代码才能知道发生了什么。