C#TCP传完文件让服务端接收完告诉客户端发送完成
答案:2 悬赏:70
解决时间 2021-11-28 16:00
- 提问者网友:写不出迷人情诗
- 2021-11-28 09:31
我现在做一个文件发送的功能,具体的功能已经可以实现分包发送。但是怎么实现所有数据包从客户端发送到服务端之后,服务端给客户端一个发送完成的提示或状态。请写一下关键代码或思路?网上看有人写用包头文件实现?这个包头文件具体需要怎么操作?
最佳答案
- 二级知识专家网友:余生继续浪
- 2021-11-28 10:03
包头文件一般是放一些关键信息,例如:消息序号,消息类型,文件分包顺序,整个包大小,校验码,传输内容。
用tcp呢,你可以不做往返校验。如果用UDP,你就需要服务器返回应答,把消息包验证后,返回客户端一个通知包,表示我收到了某某包。 客户端定时查询自己所有包是否都得到服务器验证。
用tcp呢,你可以不做往返校验。如果用UDP,你就需要服务器返回应答,把消息包验证后,返回客户端一个通知包,表示我收到了某某包。 客户端定时查询自己所有包是否都得到服务器验证。
全部回答
- 1楼网友:眠于流年
- 2021-11-28 11:35
1)根据msdn文档,tcpclient的构造函数
public tcpclient(string hostname,int port)参数:
hostname 类型:system.string 要连接到的远程主机的 dns 名。
port 类型:system.int32 要连接到的远程主机的端口号。
注意:第一个参数hostname,只能是域名或主机名;不能直接使用字符串 "172.18.9.114"
2)使用以下方法,可以绕开 dns.gethostname( )
using system.net;
……
endpoint ep = new new ipendpoint(ipaddress.parse("172.18.9.114"), 518888);
//使用tcpclient另一个构造函数 public tcpcleent(endpoint ep)
client = new tcpclient(ep);
……
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯