【问题标题】:Java: How to open a program using the command line and interactJava:如何使用命令行打开程序并进行交互
【发布时间】:2012-05-29 17:10:26
【问题描述】:

过去几个小时我搜索了很多以打开 program.exe 并像 cmd 一样与它进行交互。我发现的解决方案不起作用或仅适用于打开 cmd 并运行诸如“dir”之类的命令。

我想打开一个程序(比如说 program.exe),输入一个命令,解析输出,然后输入下一个命令。命令行窗口不必打开/可见,但我需要获取输出并输入更多命令。如何使用 Java 做到这一点?

【问题讨论】:

标签: java runtime cmd inputstream outputstream


【解决方案1】:

我认为您可能指的是打开另一个进程并从中运行命令行程序并将参数传递给这个辅助进程。

如果是这样,您正在寻找的是ProcessBuilder

您可以创建一个Process 并获得一个输入流来读取它,或者一个输出流来写回它。

您可能需要检查以下示例:

【讨论】:

    【解决方案2】:

    您应该看看运行时。它是每个应用程序都拥有并且可以与环境交互的对象。 http://docs.oracle.com/javase/7/docs/api/java/lang/Runtime.html

    您可以使用“exec”启动一个程序,该程序将返回一个 Process 实例。您可以通过调用“process.getOutputStream();”来访问输出流

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-16
      • 2010-11-28
      • 1970-01-01
      • 2016-06-19
      • 1970-01-01
      • 1970-01-01
      • 2020-01-01
      • 1970-01-01
      相关资源
      最近更新 更多