引用单元 ;HttpApp
procedure TForm1.Button1Click(Sender: TObject); var Str: WideString; http: AnsiString; begin Str := Memo1.Text; http := HTTPEncode(UTF8Encode(Str)); Memo2.Text := http; end; procedure TForm1.Button2Click(Sender: TObject); var Str: WideString; http: AnsiString; begin Str := Memo2.Text; http := UTF8Decode(HTTPDecode(Str)); Memo1.Text := http; end;
使用前要用UTF8Encode转换成utf-8编码
HTTPEncode(UTF8Encode(Text));
不然和标准的url_encode()编码结果不一致,查询结果自然不是预期的。可以通用浏览器地址来查看。
解码后要用UTF8Decode做解码后处理:
UTF8Decode(httpdecode(Text))
不然解码后还是一堆乱码。