发送方
int wlen = 0;
// buf 里面存放的是文件的内容
// size 存放文件大小的int型
// 先发送文件大小
ret = write(connfd, &size, 4);
// 在发送文件具体内容
while(1) {
ret = write(connfd, buf+wlen, size-wlen);
if (ret == 0) {break;}
// printf("ret=%d\n", ret);
wlen += ret;
}
接收方
int rlen = 0;
char buf[1024*1024];
int size = 0;
// buf 用户存放的接受到的文件内容
// size 存放文件大小的int型
// 先接收文件大小
ret = read(connfd, &size, 4);
// 在接收文件具体内容
while(1) {
ret = read(connfd, buf+rlen, size-rlen);
if (ret == 0) {break;}
// printf("ret=%d\n", ret);
rlen += ret;
}