如果我需要发送不同类型的记录,该如何确定 服务器接收的记录类型?
TRecord1 = packet record
String1: String[10];
String2: String[25];
end;
TRecord2 = packet record
String3: String[30];
MyInt: Integer;
end;
我可以轻松发送选择的记录,但是如何让服务器知道 正在发送哪个记录?
答案 0 :(得分:0)
答案很简单:你不能。
最后,记录只是通过TCP以字节数组的形式传输。 接收端不知道它正在查看哪种结构。 更糟糕的是,如果接收器和发送器在不同的平台上运行,它们甚至可能在字节顺序上不一致!
答案 1 :(得分:-1)
您应该将整个对象序列化为JSON之类的东西,另一方面将接收对象反序列化为正确的对象。
您可以使用这些开源项目或编写自己的序列化器/反序列化器: