try {
pro = Runtime.getRuntime().exec("cat 1.jpg");
} catch (IOException ex) {
Logger.getLogger(ExecuteThread.class.getName()).log(Level.SEVERE, null, ex);
}
BufferedInputStream is = new BufferedInputStream(pro.getInputStream());
这样我可以使用is.read(buffer) 获取返回值
但是我需要这个返回值的字节数有限制,比如超过1024byte 就停止process。
要怎么写呢?求帮助
java 获取process返回值的指定部分
答案:3 悬赏:40
解决时间 2021-03-22 19:46
- 提问者网友:星空下的寂寞
- 2021-03-22 06:30
最佳答案
- 二级知识专家网友:哥在撩妹请勿打扰
- 2021-03-22 07:41
byte[] bs = new byte[1025];
while((count = dis.read(bs))<1025){
String str=new String(bs,0,count);
}
超过1024才会读,具体怎么返回,自己可以加个标识flag
while((count = dis.read(bs))<1025){
String str=new String(bs,0,count);
}
超过1024才会读,具体怎么返回,自己可以加个标识flag
全部回答
- 1楼网友:情战凌云蔡小葵
- 2021-03-22 08:31
是多线程的吧,process是一个线程
再看看别人怎么说的。
- 2楼网友:狠傷凤凰
- 2021-03-22 08:02
请参考java API
public BufferedInputStream(InputStream in,
int size)创建具有指定缓冲区大小的 BufferedInputStream 并保存其参数,即输入流 in,以便将来使用。创建一个长度为 size 的内部缓冲区数组并将其存储在 buf 中。
参数:
in - 底层输入流。
size - 缓冲区大小。
抛出:
IllegalArgumentException - 如果 size <= 0
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯