怎么正确解析Http 请求返回流,变成字符串
如何正确解析Http 请求返回流,变成字符串
如何正确解析Http 请求返回流,变成字符串。
是返回京东api接口的http返回流,结果是返回值中有中文,返回的乱码。
如何编程,在把流变成字符串时,返回正确字符串。
上述代码返回的值:
'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"}}
------解决方案--------------------
你是读到HTTP头部了吧。。
------解决方案--------------------
返回的字符串并非不正确,只是你没使用正确的编码。
用UTF8Decode转换一下
如何正确解析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"}}
------解决方案--------------------
你是读到HTTP头部了吧。。
------解决方案--------------------
返回的字符串并非不正确,只是你没使用正确的编码。
用UTF8Decode转换一下