源码
TCP 文件传输(完整工程)
本机/局域网收发文件:YF1 协议头 + TCP类.发送文件 + 进度;工程在 examples/TCP文件传输。
TCP 文件传输
同一窗口里既当接收端,也当发送端。本机联调:先「启动接收」,再选文件「发送」。跨机器时把主机改成对方 IP,两端端口一致。
工程路径(仓库 / 安装目录示例): examples/TCP文件传输/
在 YStudio 中打开 TCP文件传输.ysproj 后 F5 运行即可。
协议
双方 置分包模式(0)(原始字节流)。
- 一行 UTF-8 头,以换行结束:
YF1|文件名|字节数 - 紧接着文件原始字节。发送端用
TCP类.发送文件(分片 +发送进度/发送完毕),不要在发完前断开。
接收端在 数据到达字节集 里先拼出协议头,再按声明的字节数把后续数据 写出文件(追加)。
界面要点
- 文本框主机 / 端口:默认
127.0.0.1/19200 - 按钮监听 / 停止:在
0.0.0.0上监听 - 文本框保存:收到文件写入目录(默认
received) - 进度条 + 日志:发送进度与状态
资源/演示.txt 会随程序发到 exe 同目录,启动时若找到会自动填进发送路径。
注意
- 文件名里的
\ / | : * ? < >会换成下划线 发送文件不看扩展名;异步返回真只表示已开始,结束看发送完毕- 接收端没开时会提示失败,窗口不会卡住