indy10.5.5使用IdTCPServer接收中文消息显示乱码,请帮忙

luojiajingge 2011-08-19 05:03:28
with AContext.Connection do // 已经连接上的一个进程
begin
try
sleep(1);
sreLen := AContext.Connection.Socket.InputBuffer.Size;
if sreLen < 1 then
exit;

SetLength(FRecvBuffer, 0);
cmd := AContext.Connection.Socket.ReadString(sreLen);

if cmd <> '' then
begin

Memo1.Lines.Add(cmd);//接收的中文这里显示的乱码,比如“中国”这里显示为“VP9z”,英文没问题
end;
。。。。。。。。。

请高手给我一个解决办法吧,感谢万分


...全文
227 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
luojiajingge 2011-08-22
  • 打赏
  • 举报
回复
已解决,cmd := AContext.Connection.Socket.ReadString(sreLen,TEncoding.Default);
就ok了
luojiajingge 2011-08-22
  • 打赏
  • 举报
回复
忘记说了 我用的是delphi2010
rainychan2009 2011-08-19
  • 打赏
  • 举报
回复
字符集。
SQLDebug_Fan 2011-08-19
  • 打赏
  • 举报
回复
检查一下是否由于字符集不对,DELPHI 2009以下都是使用ANSI的。

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧