在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
使用Delphi对Json中的Unicode字符串进行解析:
[{"name":"\u97e9\u56fd\u9996\u5c14KT\u670d\u52a1\u5668","ip":"211.115.67.40"},{"name":"\u97e9\u56fd\u5357\u90e8","ip":"211.115.67.40"}]
function TForm1.DecodeUnicodeString(const S: string): string; var buf: array[0..4] of Char; i: Integer; Ch, PvCh: Char; US: string; Str: string; begin Result := ''; ZeroMemory(@buf[0], SizeOf(buf)); i := 1; while i < Length(S) do begin Ch := S[i]; if (Ch = 'u') and (i > 1) then begin PvCh := S[i-1]; if PvCh = '\' then begin US := Copy(S, i+3, 2) + Copy(S, i+1, 2); HexToBin(PChar(US), buf, 2); Str := WideCharToString(@buf[0]); Result := Copy(Result, 1, Length(Result)-1); // drop "\" Result := Result + Str; Inc(i, 5); Continue; end; end; Inc(i, 1); Result := Result + Ch; end; end; procedure TForm1.FormCreate(Sender: TObject); begin ShowMessage(DecodeUnicodeString('\u97e9\u56fd\u9996\u5c14KT\u670d\u52a1\u5668')); end; 运行结果 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论