У меня есть этот код, вставить какую-NONE латинской charcter, а затем отправить его из IDTCPserver
Чтобы idTcpclient
Как читать нелатинские Charactes внутри потока памяти, отправленные с iDTCPServer?
LVU := TStringList.Create;
LVU.Add('مرحبا');
try
if (LVU.Count > 0) then
begin
memorylist := TMemoryStream.Create;
try
LVU.SaveToStream(memorylist);
memorylist.Position := 0;
AContext.Connection.IOHandler.DefStringEncoding := IndyTextEncoding_UTF8;
AContext.Connection.IOHandler.LargeStream := true;
AContext.Connection.IOHandler.Write(memorylist, 0, true);
finally
memorylist.Free;
end;
end;
finally
LVU.Free;
end;
, но когда клиент получит его, то получат от текста внутри мса, как «???????» В чем может быть проблема ? Я уже установил кодировку соединения в utf8
Я запустил этот сервер на Ubuntu. Когда я пытаюсь сервер на окнах, я получил текст в обычном режиме.
И это, как я прочитал поток на стороне клиента
FMSFROMCALL := TMemoryStream.Create;
FTCP.Socket.LargeStream := True;
FTCP.Socket.ReadStream(FMSFROMCALL, -1, false);
FMSFROMCALL.Position := 0;