iteye_19969 2014-03-04 15:19
浏览 186
已采纳

使用Tomcat7的HttpServletRequest的输入流问题,烦请各位帮忙看看

InputStream stream = request.getInputStream();
int streamLength = request.getContentLength();
byte[] data = new byte[streamLength];
stream.read(buffer, 0, streamLength);

代码如上,当request请求中的字节数组超过一定长度之后,data数组获取到的数据全是0,大概是前180个是正常的,超过180个之后data数组中就全是0(data[180]之后的数字取出来全是0),大概是180个,反正有一个具体的固定的值,每次超过都是0,使用的是jdk7,tomcat7先谢谢大家了。

  • 写回答

6条回答 默认 最新

  • 普通网友 2014-03-07 14:47
    关注

    [code="java"]byte[] data = new byte[streamLength];
    int count = 0;
    int len;
    while ((len = stream.read(data, count, streamLength - count) != -1) {
    count += len;
    }[/code]

    分段读,每次是有点数据他就先给你点,剩下的还在路上

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?