如何在java中读取socket的响应之前获取响应长度

时间:2015-10-28 12:02:48

标签: java sockets

我正在研究MML服务器,我的任务是从MML服务器读取响应。在这种情况下,响应中没有“响应结束”字符。我怎么知道答复结束了?在阅读响应之前是否有任何技术可以获得响应长度。通过这样做,我想使用响应长度打破我的while循环。

while(true)
{
    try
    {
       char temp = (char) is.read();
       System.out.println(temp);
       responseLine = responseLine + temp;
    }
    catch(Throwable e)
    {
        e.printStackTrace();
        break;
    }
}

1 个答案:

答案 0 :(得分:0)

我不知道MML,但对于一般的流,识别消息结束的方法是:

  • “消息结束”标记/流中的序列
  • 包含有关消息长度信息的已知消息头 - 然后计算字节/字符
  • 流的结尾 - 发件人在其末尾关闭流