var
  ss:string;
begin
  ss:='中国人';
  showmessage(UTF8Encode(ss));
end
ss:='中国';
结果:='涓浗';ss:='中国人';
结果:='涓浗浜?襺Ѐ襺戴곈箩葁献皾属皽఼ ';
ss传入值为偶数没问题,只要为奇数就会出现乱码,UTF8Encode 为系统自带的函数function Utf8Encode(const WS: WideString): UTF8String;
var
  L: Integer;
  Temp: UTF8String;
begin
  Result := '';
  if WS = '' then Exit;
  SetLength(Temp, Length(WS) * 3); // SetLength includes space for null terminator  L := UnicodeToUtf8(PChar(Temp), Length(Temp)+1, PWideChar(WS), Length(WS));
  if L > 0 then
    SetLength(Temp, L-1)
  else
    Temp := '';
  Result := Temp;
end;怎么解决单数中文的问题呀