S staroftheeast Unregistered / Unconfirmed GUEST, unregistred user! 2006-02-23 #1 现在要实现客户端向服务器发送请求数据包,服务器响应,返回数据包,客户端把它发送过来的数据按照规定的协议进行解包。服务器发送数据的长度不定,我现在用clientsocket编写客户端。请问如何实现“发送--接收--处理”这样的过程,它传过来的数据我是应该先缓存然后存在文件里么?
现在要实现客户端向服务器发送请求数据包,服务器响应,返回数据包,客户端把它发送过来的数据按照规定的协议进行解包。服务器发送数据的长度不定,我现在用clientsocket编写客户端。请问如何实现“发送--接收--处理”这样的过程,它传过来的数据我是应该先缓存然后存在文件里么?
S staroftheeast Unregistered / Unconfirmed GUEST, unregistred user! 2006-02-23 #2 数据传输格式为0x02(1Byte) Len(2Byte) Type(1Byte) Len1(2Byte) Data1 Len2(2Byte) Data2 checksum(1Byte) 0x03(1Byte) 以0x02开头,0x03结尾 len表示从Type到Data2结束的长度 Type的bit7表示这串信息是命令(0)还是数据(1),bit6表示是压缩(0)还是不压缩(1) len1表示Data1的长度 checksum表示从len到Data2所有数据的XOR Data1,和Data2的长度不定,而且服务器发来的数据可能还包括Data3 Data4 Data5~~~~~ 请问我对这样的数据应该如何解包 并且我得到的数据应该写到文件中么,该如何操作呢,谢谢
数据传输格式为0x02(1Byte) Len(2Byte) Type(1Byte) Len1(2Byte) Data1 Len2(2Byte) Data2 checksum(1Byte) 0x03(1Byte) 以0x02开头,0x03结尾 len表示从Type到Data2结束的长度 Type的bit7表示这串信息是命令(0)还是数据(1),bit6表示是压缩(0)还是不压缩(1) len1表示Data1的长度 checksum表示从len到Data2所有数据的XOR Data1,和Data2的长度不定,而且服务器发来的数据可能还包括Data3 Data4 Data5~~~~~ 请问我对这样的数据应该如何解包 并且我得到的数据应该写到文件中么,该如何操作呢,谢谢
天 天道酬勤 Unregistered / Unconfirmed GUEST, unregistred user! 2006-02-24 #3 既然知道数据报的格式,就一个一个字节的解析好了。如果需要保存日志,那就写到文件中。
S staroftheeast Unregistered / Unconfirmed GUEST, unregistred user! 2006-02-24 #4 我想请问,客户端和服务器之间交流的数据是直接写到缓存中的么。我想写入文件,如何操作?
C crazyman2006 Unregistered / Unconfirmed GUEST, unregistred user! 2006-02-24 #5 利用TFileStream,然后将字节流写入TFileStream,利用TFileStream.SaveToFile就可以了。
K kittycat Unregistered / Unconfirmed GUEST, unregistred user! 2006-02-24 #6 按我上面说得字符创格式,客户端发送的时候要把它转换成16进制么。还是自己写出要发送的字串直接发送请求呢