unifocus 2011-04-19 14:17
浏览 270
已采纳

Java的Process对象能不能在执行命令之后一段时间再去获取InputStream?

用Runtime.getRuntime().exec(cmd)执行命令获得了一个Process对象,但这个时候命令没有输出,要执行了其它操作之后才会有一连串的结果输出(命令就像一个服务器程序一样等待操作)。在执行了其它操作之后,再去调用Process对象的getInputStream()方法会得到那一连串的吗?

  • 写回答

1条回答 默认 最新

  • iteye_3843 2011-04-19 16:03
    关注

    没问题,可以的;
    [code="java"]
    Process pr = Runtime.getRuntime().exec(finalCommand);
    BufferedReader br_in = null;
    try {
    br_in = new BufferedReader(new InputStreamReader(pr.getInputStream()));
    String buff = null;
    while ( (buff = br_in.readLine()) != null) {
    System.out.println("stdout: " + buff);
    try {
    Thread.sleep(100);
    }
    catch (Exception e) {}
    }
    br_in.close();
    }
    catch (IOException ioe) {
    System.out.println("Error printing process output.");
    ioe.printStackTrace();
    }
    finally {
    try {
    br_in.close();
    }
    catch (Exception ex) {}
    }
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 c51单片机控制步进电机
  • ¥20 Visual studio无法检测到设备
  • ¥15 为什么我通过html绘制的SVG折线图插入到word中坐标轴不显示出来
  • ¥30 vue 页面窗口放大或者缩小元素会变化
  • ¥15 questasim仿真报错
  • ¥15 寻找电脑攻防的导师,有问题请教一下。
  • ¥20 微信同是win11,我的电脑安装不了pageoffice,一直无法打开
  • ¥15 这个界面我通过postman请求不到,但是通过浏览器可以正常访问
  • ¥15 wpf程序使用过程中异常奔溃
  • ¥15 多目标优化算法在与其他算法数据对比结果判断