sHeader := 'Content-Type: text/html; charset=gb2312;'+char(13)+char(10);
        HttpAddRequestHeaders(hRequest, PChar(sHeader), length(sHeader), HTTP_ADDREQ_FLAG_REPLACE Or HTTP_ADDREQ_FLAG_ADD);我加上面的表头都没无改变乱码?还是哪个地方写错了!?

解决方案 »

  1.   

    发送http请求时加这个header好像不能解决服务器发送给你的类容的乱码的问题,应该看看服务器发送过来的http类容中的头信息,要根据其中的Content-Type去解析下载的类容,不过还有一个原因可能是服务器下载的类容本身就是乱码,可以用浏览器的地址栏中直接输入url试试。
      

  2.   

    可能是吧!
    我用 IE 打开 选择 UTF-8 就可以正常显示了!!但是在 Delphi 里如何做字符串的编码转换呢!?
      

  3.   

    >>>我用 IE 打开 选择 UTF-8 就可以正常显示了!!
    服务器返回给你的http头中没有含有正确的编码信息,应该含有:
    Content-Type: text/html; charset=utf-8;
    如果有这个头,那么winhttp应该自己就可以正确的解析内容了。如果不能修改服务器的代码加上那个头,那只能在客户端自己转换了,怎么转换去google上搜索吧。
      

  4.   

    delphi不是有个UTF8Decode函数吗?
      

  5.   

    哈哈~~~~谢谢  objectart() 搞定了!!!