通过socket传输消息一般用到了 send(),和recv()两个函数,如:
发送消息
sprintf(sndmsg,"%s",....);
if(send(mysockefd,sndmsg,sizeof(sndmsg),0)==-1){
throw string("发送消息失败...");
return -1;
}
接收消息
memset(rcvmsg,0x00,sizeof(rcvmsg));
if((n=recv(ctlflat_mainctl_socket,rcvmsg,sizeof(rcvmsg),0))==-1){
throw string("接收消息失败...");
return -1;
}
rcvmsg[n]=0x00;
printf("接收到的消息是:%s\n",rcvmsg);
ps:现在要求用socket传输文件,除了
fopen("aaa.txt","r");
while(fget(....)!=NULL){
//通过套接字send
send();
}
这个办法外,还有其他办法吗?要用到socket。
socket 传输文件是把文件内容一段段的读入到字符串,再像socket传输消息那样传过去吗
答案:2 悬赏:0 手机版
解决时间 2021-02-26 23:55
- 提问者网友:活着好累
- 2021-02-26 13:56
最佳答案
- 五星知识达人网友:逐風
- 2021-02-26 14:32
socket只能传BYTE··
把文件读取到文件流里再转成byte 传过去不就完了··
把文件读取到文件流里再转成byte 传过去不就完了··
全部回答
- 1楼网友:梦中风几里
- 2021-02-26 14:50
也许是的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯