socket接收数据的问题 比如我的缓冲区有3K,那么一个大的文件发过来的时候,我recv一次只能3K,如何接受这种大文件阿??给个范例把~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果用的是UDP,那么协议包的大小要小于3K。循环接收就可以了。char szBuffer[ 3 * 1024];int nLen = sizeof(szBuffer);while (nLen == sizeof(szBuffer)) { nLen = recv(yoursocket, szBuffer, sizeof(szBuffer), 0); // 将收到的数据保存到文件中} 我的方法就是接收tcp数据的 ^_^ int len = 0 ;int rec = 0 ;while ( len < FileLenth ){ rec = recv() ; len += rec ; if ( len == FileLength ) { break ; } sleep( 100 ) ;} FileLenth ?client端是不知道文件大小的,这个怎么可以阿? Client ,Server两端需要协议 www.vckbase.com上有可借荐的例子 关于vc2010 cstring的问题 求拼积木算法 请较关于alpha混合 复杂的ListCtrl 急求 关于OnCtlColor 求 MSVC++6.0 控制台 连接 MYSQL 方法 用CSocket作的聊天室,在局域网还网吧里都和可以正常运行,为什么和局域网外的机子(网吧外)的不能连接???求救!!! 求《Visual C++6.0高级编程范例》软盘实例代码 请大家帮我推荐几本容易入门的VC++的书。 急++++++++有关鼠标事件的问题(钩子)++++++++++ 求救--怎样让文本编辑自动换行? 怎么修改已有的*.hlp文件?
int nLen = sizeof(szBuffer);while (nLen == sizeof(szBuffer)) {
nLen = recv(yoursocket, szBuffer, sizeof(szBuffer), 0); // 将收到的数据保存到文件中
}
int rec = 0 ;
while ( len < FileLenth )
{
rec = recv() ;
len += rec ;
if ( len == FileLength )
{
break ;
}
sleep( 100 ) ;
}