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]

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

报告相同问题?

悬赏问题

  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条