今天学习了UDP文件传输实现
条件所限只能用手机来进行记录
- 因为学习了c++,所以想用类来实现这个方法。
- 定义一个类CFileTrans,头文件winsock2 ws2_32.lib
- 方法有: 1. 初始化套接字。 2. 服务端的UDP绑定。3. 服务端的开始服务。4. 客户端的发送服务。5.获取文件名。6.获取文件大小。
- 一个线程函数。
- 一个文件结构体。包含文件名,文件大小,发送类型,发送id。
具体流程
- 服务端开启服务。绑定端口。
- 客户端接受要发送的文件信息。
- 获取文件名文件大小。
- 循环读取文件,同时发送数据,每次发送1024字节。
- 服务端循环接收消息。
- 对消息类型进行判别。分清楚是文件还是文件内容。
- 如果是文件,则申请一个文件大小的缓冲区。同时创建本地文件。
- 如果是文件内容,则在缓冲区中不断添加接收的内容。直到接收大小和文件大小一致时结束。
代码有机会贴。