首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

indy的简单通信解决方法

2012-03-27 
indy的简单通信Delphi(Pascal) codeprocedure TForm3.btn1Click(Sender: TObject) //发送edt1的内容给ser

indy的简单通信

Delphi(Pascal) code
procedure TForm3.btn1Click(Sender: TObject); //发送edt1的内容给serverbegin   IdUDPClient1.Connect();   IdUDPClient1.Send(Edt1.text);   IdUDPClient1.Disconnect();   //通过Indy Client UDP发送消息end;procedure TForm3.IdUDPServer1UDPRead(Sender: TObject; AData: TBytes;   ABinding: TIdSocketHandle);  //这里ADate是TBytes,为什么?书上怎么是streamVar   TempStream : TStringStream;begin  TempStream := TStringStream.Create('');  TempStream.Write(Adata,sizeof(Adata));  memo2.Lines.Add(TempStream.DataString);  TempStream.free;end;//输出的结果是乱码,对这个不懂,求懂得指点下


[解决办法]
你传递的数据是不是有中文?用的delphi版本是不是2009以上?
如果是就要这样:
IdUDPClient1.send(Edit1.text,TEncoding.UTF8);//指定编码

memo2.Lines.Add(TempStream.DataString,,TEncoding.UTF8);

热点排行