与java通信遇到的问题 ( 积分: 100 )

K

kitalry

Unregistered / Unconfirmed
GUEST, unregistred user!
最近在用delphi7做一个PC客户端,
客户端使用流和idhttp控件与java服务端进行通信,
遇到的问题是客户端这边传送过去的数据,
服务端读出的数据总是和客户端送出的数据不一致,
例如下面这段delphi客户端代码:
var
s1:TMemoryStream;
url:string;
initcode:integer;
begin
idhttp1.Request.ContentType:= 'application/octet-stream ';
s1:=TMemoryStream.Create();
initcode:=13;
url:= 'http://127.0.0.1:8080/work/servlet/test ';
s1.Write(initcode,sizeof(initcode));
idhttp1.Post(url,s1);
end;

java服务端对应的读取数据代码是:
InputStream is = request.getInputStream();
DataInputStream call = new DataInputStream(is);
int initCode = call.readInt();
System.out.println("initCode=" + initCode);

但服务端得到的initCode值并不是13,而是218103808,
这是怎么回事,有人给解释一下吗.
第一次做与java通信这方面的东西,望指教.
 
但如果delphi客户端这边initcode值为0的话,java客户端得到的initcode值也是0,
但0以外的值,客户端和服务端总是会不一致.
 
为什么不用xml传值呢?
 
java服务端是别人写的,
已经写好了,
现在就是要用流来进行通信.

另外,我不会用xml...
 
帮忙解答一下亚
 
顶部