我是超级小菜鸟,我在寻找delphi的门槛,现在还没摸着.我想用一个memo显示网页源码先用Idhttp读取以后然后在memo中显示,但是怎么显示都是乱码,读取的网页是GB2312的代码如下
  TempStr:=GetWebPage('http://www.5sf.com/index.asp');
  Memo1.text:=TempStr;

解决方案 »

  1.   

    用以下函数转换一下内码:
    AnsiToUtf8
    Utf8ToAnsi
      

  2.   


    procedure TForm1.Button2Click(Sender: TObject);
    var
      tempStr: string;
    begin
      IdHTTP1.Request.Referer := 'http://www.5sf.com/index.asp';
      TempStr:=idhttp1.get('http://www.5sf.com/index.asp');
      Memo1.text:=TempStr;
    end;
    在我这显示正确的
      

  3.   

    1楼的,我不知道你让我转码是什么意思2楼的,我按照你给的源码,memo1显示的是乱码,我用的是Delphi2009,是不是版本的问题?
      

  4.   

    你用2009?早说嘛。
    procedure TForm6.Button1Click(Sender: TObject);
    var
        ms: TMemoryStream;
    begin
        ms := TMemoryStream.Create;
        try
            IdHTTP1.Get('http://www.5sf.com/index.asp', ms);
            ms.Position := 0;
            Memo1.Lines.LoadFromStream(ms);
        finally
            ms.Free;
        end;
    end;
      

  5.   

      Memo1.Lines.Text := utf8toansi(IdHTTP1.Get(Edit1.Text));