如何正确解析Http 请求返回流,变成字符串。
是返回京东api接口的http返回流,结果是返回值中有中文,返回的乱码。
如何编程,在把流变成字符串时,返回正确字符串。
Function StreamToStr(MyStream :TStream) :String; //把流对象变成string
var str :String; len :Integer;
begin
Result :='';
if MyStream =nil then exit; try
len :=MyStream.Size;
SetLength(str, len);
MyStream.Position :=0; MyStream.ReadBuffer(str[1], len);
Result :=Str;
finally
MyStream.Free;
end;
end;上述代码返回的值:
'Keep-alive'#0#0'????X'#3#0#0'zh_desc":"鎺堟潈鑰呬笉鏄晢瀹?,"en_desc":"the franchisor not businessmen"}}通过在浏览器中,输入Url返回的值:
{"error_response":{"code":"22","zh_desc":"授权者不是商家","en_desc":"the franchisor not businessmen"}}
用UTF8Decode转换一下