socket服务器和客户端传输的数据格式。请知道大概相关的都来帮忙一下,我搞得头都大了。
本帖最后由 listenx5 于 2013-04-07 04:31:57 编辑 服务器用java做的。客户端用c#做。用tcp协议
我用的传输办法是:将需要传输的对象序列化为xml字符串传输到另一端后反序列化。
java用XStream来序列化对象,c#用的是XmlSerializer。
不过发现这两个东西序列化对象不是按同一标准来序列化的。
例如:java: Object o=new String("aa");
把o序列化后结果是 <string>aa</string>
而 c#: Object o=new String("aa");
把o序列化后结果是 <anyType xsi:type="xsd:string">aa</anyType>
这样就不能直接把接收到的xml字符串进行反序列化了。
或者说 大家有其他 关于跨语言对象传输的办法吗。请分享一下。
游戏服务器 对象传输 序列化 跨语言对象传输 服务器客户端通信
[解决办法]
自定定一套序列化对象的规则,两边按自己的规则序列。将对象打包成xml形式
[解决办法]
c/s端都用同一个xml 都能解和生成 就OK了,无非是定义个格式的事。
[解决办法]
socket通信协议,最好定义一套通用的数据传输方式。不要搞一些平台特有的或业务相关性强的协议。
[解决办法]
Java很多序列化工具可以设置自己的格式,不用默认的就可以了。
看看API说明。