indy 10 UDP 发消息 中文乱码 求救
服务端接收消息代码
procedure TForm2.IdUDPServer1UDPRead(AThread: TIdUDPListenerThread;
AData: TBytes; ABinding: TIdSocketHandle);
begin
memo1.Lines.Add(ABinding.PeerIP+' 来消息 ……' );
memo1.Lines.Add(BytesToString(AData));
end;
客户端发送代码就一个
IdUDPClient1.Send(memo1.Text);
程序运行后,英文和数字没问题,就是中文会出现乱码
我用的是2010 的indy 10 版本,哪位大侠能教我如何解决?
曾经用过 UTF8 ,结果光是加码了,不知道解码,服务端不知道怎么写了
IdUDPClient1.Send(memo1.Text,TEncoding.UTF8);
希望能给出关键的代码,叩谢!!!!
[解决办法]
我自己顶顶自己
[解决办法]
procedure TForm1.Button1Click(Sender: TObject);
begin
IdUDPClient1.Send(Memo1.Text,TEncoding.UTF8);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
IdUDPServer1.Active :=true ;
IdUDPClient1.Active :=true ;
end;
procedure TForm1.IdUDPServer1UDPRead(AThread: TIdUDPListenerThread;
AData: TBytes; ABinding: TIdSocketHandle);
var
RecString:string;
i:Integer;
begin
RecString:=StringOf(AData);
Memo2.Lines.Add('收到数据:'+Trim(RecString));
end;
end.