当前位置: 代码迷 >> J2SE >> 关于exec后读取结果的有关问题
  详细解决方案

关于exec后读取结果的有关问题

热度:9   发布时间:2016-04-24 01:15:00.0
关于exec后读取结果的问题
运行环境:linux

Process process = Runtime.getRuntime().exec(new String[] {"sh", "-c", "命令"});
BufferedReader bufferedOut = new BufferedReader(new InputStreamReader( process.getInputStream()));

String str;
while(null != (str = bufferedOut.readLine()) {
...
}

问题:上面的代码,能否保证所有的输出都被读取到?
假如命令执行很慢,而读取很快,不会不会命令还没执行完,就readLine等于null了,这样就没有读完所有的输出了!

------解决方案--------------------
在没有读到结束符的时候,会一直读
  相关解决方案