c#编程,socket Receive 接受时怎么判断包结束 10

如果用while(count>0){Receive}的话,就会一直等待。但是这个包不是我自定义的,也不知道大小,怎么判断接收完毕,然后结束监视。底分不多帮我解决了的加40... 如果用while(count>0){Receive}的话,就会一直等待。
但是这个包不是我自定义的,也不知道大小,怎么判断接收完毕,然后结束监视。
底分不多
帮我解决了的加40分
不行,是未知目标,对方的数据形式,我没办法更改
展开
 我来答
凤青非g
2009-03-18 · TA获得超过242个赞
知道答主
回答量:95
采纳率:20%
帮助的人:50万
展开全部
你看看这样是否可行:
skt.Receive方法会返回一个数值,表明实际收到的数据量,当这个值小于Buffer的总大小时,就认为数据传送完了
Socket skt = null;
//初始化skt
const int BuffSize = 1024;
byte[] buffer =new byte[BuffSize];
int realSize = 0;
while ((realSize = skt.Receive(buffer)) == BuffSize)
{
//保存buff数据
}
//保存buff数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友dc91b32
2009-03-15 · TA获得超过5650个赞
知道大有可为答主
回答量:5653
采纳率:0%
帮助的人:0
展开全部
约定结束消息,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式