Delphi 解决Utf8ToAnsi和Utf8DeCode转换编码为空的问题

//delphi DecodeUtf8Str解决系统自带UTF8解码缺陷

 function DecodeUtf8Str(const S: UTF8String): WideString;
 var lenSrc, lenDst  : Integer;
 begin
   lenSrc  := Length(S);
   if(lenSrc=0)then Exit;
   lenDst  := MultiByteToWideChar(CP_UTF8, 0, Pointer(S), lenSrc, nil, 0);
   SetLength(Result, lenDst);
   MultiByteToWideChar(CP_UTF8, 0, Pointer(S), lenSrc, Pointer(Result), lenDst);
 end;


//因为Delphi自带的转换函数遇到其无法识别的字符串就返回空,以上函数可解决该问题。

你可能感兴趣的:(Delphi学习天空)