|
.版本 2
.支持库 spec
.子程序 __启动窗口_创建完毕
解包 (组包 (“测试”, { 1, 2, 3, 4 }))
.子程序 组包, 字节集
.参数 名称, 文本型
.参数 图片, 字节集
.局部变量 _名称, 字节集
.局部变量 _组包, 字节集
_名称 = 到字节集 (名称)
_组包 = { }
_组包 = _组包 + 到字节集 (到整数 (取字节集长度 (_名称))) + _名称
_组包 = _组包 + 到字节集 (到整数 (取字节集长度 (图片))) + 图片
_组包 = 到字节集 (到整数 (取字节集长度 (_组包) + 4)) + _组包
返回 (_组包)
.子程序 解包, 文本型
.参数 Data, 字节集
.局部变量 _包长度, 整数型
.局部变量 p, 整数型
.局部变量 _名称长度, 整数型
.局部变量 _图片长度, 整数型
_包长度 = 取字节集数据 (Data, #整数型, 1)
.如果真 (_包长度 = 0)
返回 (“错误的包”)
.如果真结束
.如果真 (_包长度 < 取字节集长度 (Data))
返回 (“继续接收”)
.如果真结束
.如果真 (_包长度 ≥ 取字节集长度 (Data))
' // 长度判断自己写具体了
p = 1 + 4
_名称长度 = 取字节集数据 (Data, #整数型, p) ' // 会自动增加4字节
调试输出 (到文本 (取字节集中间 (Data, p, _名称长度)))
p = p + _名称长度
_图片长度 = 取字节集数据 (Data, #整数型, p) ' // 会自动增加4字节
调试输出 (取字节集中间 (Data, p, _图片长度))
返回 (“成功”)
.如果真结束
|
|