java中的inputstream二次读取问题

关于inputStream在第二次使用时无内容的问题

使用IOUtils对inputStream进行操作之后,再次调用inputStream发现其length变为了0

IOUtils.toByteArray(inputStream)

解决办法:先将inputStream流读到byte中缓存住,然后需要使用时每次都重新生成流

//读取inputStream流到byte数组
byte [] content = IOUtils.toByteArray(inputStream);
//需要使用时都需要新建一个流
IOUtils.copy(new ByteArrayInputStream(content), myOutputStream);
doSomethingElse(new ByteArrayInputStream(content));
评论区
头像