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条)

报告相同问题?

悬赏问题

  • ¥15 curl 命令调用正常,程序调用报 java.net.ConnectException: connection refused
  • ¥20 关于web前端如何播放二次加密m3u8视频的问题
  • ¥15 使用百度地图api 位置函数报错?
  • ¥15 metamask如何添加TRON自定义网络
  • ¥66 关于川崎机器人调速问题
  • ¥15 winFrom界面无法打开
  • ¥30 crossover21 ARM64版本安装软件问题
  • ¥15 mymetaobjecthandler没有进入
  • ¥15 mmo能不能做客户端怪物
  • ¥15 osm下载到arcgis出错