我想用c++写一个UDP的客服器与服务器实现文件传输,并且服务器可以为多

我想用c++写一个UDP的客服器与服务器实现文件传输,并且服务器可以为多个客户器服务,实现对多个客户器的管理。你可以指导我怎么做吗?我查了许多c++网络编程的书,都没教我如何实现,我现在头疼死了。求大神指导

对C++的UDP编程不太了解,我以前用C#写过传文件的
因为UDP不是可靠连接,所以传送的顺序可能会乱还可能丢包,所以你要自己写一个简单的协议,
比如,服务端发送 我要给你发文件,客户端回答,好的我准备好了你传吧
然后,服务端把文件发成小块 做一个自定义结构,包含文件块的一些校验信息、块大小、序号之类的发给客户端,然后客户端收到之后检查没有错误后告诉服务端收到了,如果有错则告诉服务端重发,如果服务端在特定时间没有收到回复,则重新发送这个数据块
最后文件结束时发送一个结束标志
多客户端时,则需要有服务端定义一个列表,记录所有客户端信息,做统一管理,这个最好用线程,每一个客户端分配一个线程来处理
大概就这样吧,需要的知识比较多比较杂,你可以多找一些资料
你看看
http://keencard.blog.163.com/blog/static/10237173020092210262750/追问

谢谢,我看一下你发的链接,我有学过清华大学出版社出版的《C++程序设计》但是并没有涉及到网络编程所以我一头雾水。

追答

感觉那些书都是一些基础的语法,真正要用到的东西 比如线程 网络 都要自己去学
你先看看吧 有什么问题可以讨论下

还有你可以去github里去搜看好这方面的代码,我感觉应当有

追问

非常感谢

等我做好后我追加悬赏分并采纳你,到这个月20号无论怎么样我条件采纳你

可以吗

追答

没事 没什么事的

追问

我可以私聊你吗?帮我看一下我的UDP代码吗?
流程:

1.客户端向服务器发送请求的文件名;
2.服务器打开相应的文件,把文件内容读出并传送给客户端;
3.客户端收到数据后把它写入本地文件中;
我执行了就是不行啊
我加你为百度好友通过百度聊天来沟通,完事后你可以删我。

追答

744342525你加我吧

来自:求助得到的回答
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网