[Delphi] Кодировка - UTF8 => Windows-1251

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by banned, 15 Jul 2007.

  1. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    Решил что это требует отдельной темы т.к. в гугле не смог найти ответ на этот вопрос....

    Вообщем юзаю wininet
    Code:
    function GetStr(url: string): string;
    const
      BufferSize = 6536;
    var
      hInternet, hConnect: pointer;
      Buffer: array[1..BufferSize] of char;
      BufferLen: LongWord;
      i: integer;
    begin
      result:='';
      hInternet:=InternetOpen('Mozilla/4.0 (compatible; MSIE 6.0b; Windows NT 5.0)', INTERNET_OPEN_TYPE_PRECONFIG,0, nil, 0);
      if Assigned(hinternet) then
      try
        hConnect:=InternetOpenUrl(hInternet, pchar(url),  nil, 0, 0, 0);
      repeat
      if not InternetReadFile(hConnect, @Buffer, SizeOf(Buffer), BufferLen) then
        bufferlen:=0;
        for i:=1 to bufferlen do result:=result+char(Buffer[i]);
        until bufferlen=0;
      finally
        InternetCloseHandle(hinternet);
      end;
    end;
    Вывожу в мемо GetStr('http://......php');
    Но...Русский текст выводит в utf-8...
    А надо бы вывести как ннормльный русский текст =)

    //Может я что-то не так понял...Но вот прога http://webfile.ru/1469634 ни в какие поля ничего не вводите... просто кнопку нажмите и будет утф =(
     
  2. Go0o$E

    Go0o$E Members of Antichat

    Joined:
    27 Jan 2006
    Messages:
    304
    Likes Received:
    228
    Reputations:
    419
    Может кинешь полный исходник, т.к. функция выводит все нормально, а программа нет.
     
    #2 Go0o$E, 16 Jul 2007
    Last edited: 16 Jul 2007
  3. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    http://webfile.ru/1469848
     
  4. Go0o$E

    Go0o$E Members of Antichat

    Joined:
    27 Jan 2006
    Messages:
    304
    Likes Received:
    228
    Reputations:
    419
    Используй Utf8ToAnsi().

    ___
    Да бывает. Рад помочь )
     
    #4 Go0o$E, 16 Jul 2007
    Last edited: 16 Jul 2007
  5. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,194
    Reputations:
    252
    Go0o$E, спасибо большое...
    Из-за такой маленькой функции я тра[.]ался целый день =)