日期:2014-05-20  浏览次数:20632 次

java与vc如何传递数据结构?
项目需要,做了一个B/S分布式控制Client的程序。就是 管理员用B/S管理控制各个分布的
client,其中涉及C/S通信,但S是用apache搭建的啊,所以C/S得用http通信,
我用到了 comet。
现在有个 问题啊,Cliet都是 vc写的设计大量数据结构传递。。这些数据 我在 Server如何用 java解析呢
我在想 要么 只有改成 http 下的form参数,用字符替代,,但改动稍微有点大。
有没有不用改动太多的方式,就把之前通信数据 追加在http post请求的 body内。。http服务器 在直接 解析出
数据???

------解决方案--------------------
试试看
C端用个byte[]数组保存结构体信息
int size = sizeof(your_struct);
byte[] b = new byte[sizeof(int)+size];
memcpy(&b, &size, sizeof(int));
memcpy(&b[sizeof(int)], &your_struct, sizeof(your_struct)); //保存结构体信息和结构体长度
然后把byte数组信息保存到body发送

java端用字节流的方式读取,首先获得结构体长度,然后再获取byte数组信息,然后解析byte数组信息