Java 如何启动CMD窗口并打印到它?

Java 如何启动CMD窗口并打印到它?,java,cmd,Java,Cmd,是否可以在Windows中以单独的线程启动命令提示符,并专门使用它来打印 我想这样做的原因是在一个窗口中打印日志,而另一个窗口可以接受输入命令 比如: public class Cmd { public static void main(String args[]) throws Exception { ExecutorService service = Executors.newSingleThreadExecutor(); service.submit(new Conso

是否可以在Windows中以单独的线程启动命令提示符,并专门使用它来打印

我想这样做的原因是在一个窗口中打印日志,而另一个窗口可以接受输入命令

比如:

public class Cmd {

public static void main(String args[]) throws Exception {

    ExecutorService service = Executors.newSingleThreadExecutor();
    service.submit(new ConsolePrinter());

    service.awaitTermination(10000, TimeUnit.DECADES);

}

public static class ConsolePrinter implements Runnable {

    private final Process process;

    public ConsolePrinter () throws Exception {
        process = Runtime.getRuntime().exec("cmd.exe /c start");
    }

    @Override
    public void run() {

        String message;

        int count = 0;
        while (/*console is open*/) {

            message = "Message " + count;

            // Print message in console

            try {
                Thread.sleep(2000);
            } catch (InterruptedException e) {
                break;
            }
        }

    }
}

}

是否有理由这必须是一个“命令提示符”窗口?为什么不使用一个带有文本框的窗口呢?@lit没有什么特别的原因。我只是想知道是否有可能做到。最好使用带有文本框的窗口,因为使用cmd提示符会使程序依赖于平台。此外。如果你通过cmd运行你的程序。所有打印行都在cmd窗口中打印。@Goion有一百万种不同的文本显示方式。我的问题不是哪一个最好。我只是想知道是否有可能打开一个CMD窗口并以独占方式写入它。是否有理由这必须是一个“命令提示符”窗口?为什么不使用一个带有文本框的窗口呢?@lit没有什么特别的原因。我只是想知道是否有可能做到。最好使用带有文本框的窗口,因为使用cmd提示符会使程序依赖于平台。此外。如果你通过cmd运行你的程序。所有打印行都在cmd窗口中打印。@Goion有一百万种不同的文本显示方式。我的问题不是哪一个最好。我只是想知道是否有可能打开一个CMD窗口并以独占方式写入它。