Y++ 社区

源码

TCP 文件传输(完整工程)

源码 浏览 4 下载 0 管理员

TCP类文件传输进度

本机/局域网收发文件:YF1 协议头 + TCP类.发送文件 + 进度;工程在 examples/TCP文件传输。

TCP 文件传输

同一窗口里既当接收端,也当发送端。本机联调:先「启动接收」,再选文件「发送」。跨机器时把主机改成对方 IP,两端端口一致。

工程路径(仓库 / 安装目录示例): examples/TCP文件传输/

在 YStudio 中打开 TCP文件传输.ysproj 后 F5 运行即可。

协议

双方 置分包模式(0)(原始字节流)。

  1. 一行 UTF-8 头,以换行结束:YF1|文件名|字节数
  2. 紧接着文件原始字节。发送端用 TCP类.发送文件(分片 + 发送进度 / 发送完毕),不要在发完前 断开。

接收端在 数据到达字节集 里先拼出协议头,再按声明的字节数把后续数据 写出文件(追加)。

界面要点

  • 文本框主机 / 端口:默认 127.0.0.1 / 19200
  • 按钮监听 / 停止:在 0.0.0.0 上监听
  • 文本框保存:收到文件写入目录(默认 received)
  • 进度条 + 日志:发送进度与状态

资源/演示.txt 会随程序发到 exe 同目录,启动时若找到会自动填进发送路径。

注意

  • 文件名里的 \ / | : * ? < > 会换成下划线
  • 发送文件 不看扩展名;异步返回真只表示已开始,结束看 发送完毕
  • 接收端没开时会提示失败,窗口不会卡住

相关文档:TCP 文件传输 · TCP类

附件下载