Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как скачать немецкую страничку? 
:(
    Опции темы
artem1987
Дата 12.9.2007, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 203
Регистрация: 18.7.2006
Где: Калининград

Репутация: нет
Всего: нет



Качаю страничку с немецким набором символов, проблемы возникли со специфическими знаками ( те , что с умляутами ), при выводе в мемо они отображаются кодами. подскажите как выводить их в естесственнном виде?
--------------------
Don't ask me why, ask me how.
PM MAIL   Вверх
_hunter
Дата 12.9.2007, 16:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 5
Всего: 98



для начала не помешало бы указать чем качаеш...
потом не помешало бы проверить в чем именно проблема: а именно сохрани страницу в файл и посмотри что там на самом деле -- может при отображении косяк.
кстати, unicode'а в делфях нету...


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
artem1987
Дата 12.9.2007, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 203
Регистрация: 18.7.2006
Где: Калининград

Репутация: нет
Всего: нет



качаю с пом WinInet... в текстовый файл сохраняю такая же лажа
--------------------
Don't ask me why, ask me how.
PM MAIL   Вверх
_hunter
Дата 12.9.2007, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 5
Всего: 98



Цитата(artem1987 @  12.9.2007,  16:33 Найти цитируемый пост)
в текстовый файл сохраняю такая же лажа 

как качаеш? как сохраняеш? чем смотриш?
сюда файл выложить можеш?


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
artem1987
Дата 12.9.2007, 17:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 203
Регистрация: 18.7.2006
Где: Калининград

Репутация: нет
Всего: нет



вот так качаю...
Код


  hNet := InternetOpen('Delphi 5.x',INTERNET_OPEN_TYPE_DIRECT, nil, nil, 0);
  if Assigned(hNet) then begin
    hUrl := InternetOpenUrl(hNet, PChar(Url), nil, 0,INTERNET_FLAG_PRAGMA_NOCACHE or INTERNET_FLAG_RELOAD, 0);
      if Assigned(hUrl) then begin
       FillChar(Buffer, SizeOf(Buffer), 0);
       repeat
         Result := Result + Buffer;
         FillChar(Buffer, SizeOf(Buffer), 0);
         InternetReadFile(hUrl, @Buffer, SizeOf(Buffer), BytesRead);
       until BytesRead = 0;
       InternetCloseHandle(hUrl);
     end
     else begin
       
       
       raise Exception.CreateFmt('Cannot open URL %s', [Url]);
     end;
     
     InternetCloseHandle(hNet);
   end
  else begin
    
    
    raise Exception.Create('Unable to initialize Wininet' );
  end;


потом memo1.text := Result;
--------------------
Don't ask me why, ask me how.
PM MAIL   Вверх
_hunter
Дата 12.9.2007, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 5
Всего: 98



уже это:
Result := Result + Buffer;
неправильно (если там юникод). я ж говорю -- запиши в файл, посмотри что там (только без всяких промежуточных действи: после InternetReadFile сразу делай WriteFile)


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
artem1987
Дата 12.9.2007, 18:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 203
Регистрация: 18.7.2006
Где: Калининград

Репутация: нет
Всего: нет



Цитата

Result := Result + Buffer;
неправильно (если там юникод)


почему это неправильно?
--------------------
Don't ask me why, ask me how.
PM MAIL   Вверх
_hunter
Дата 12.9.2007, 18:50 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

Репутация: 5
Всего: 98



потому как AnsiString те работает с юникодом...


--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
Snowy
Дата 13.9.2007, 11:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 53
Всего: 484



Да всё правильно. Дело не в коде.
Страница действительно так написана. Что есть - того не изменишь.
Просто нужно парсить текст на пример поиска данных кодов и конвертировать каждый сначала в WideChar, а потом добавлять к строке.
PM MAIL   Вверх
artem1987
Дата 17.9.2007, 17:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 203
Регистрация: 18.7.2006
Где: Калининград

Репутация: нет
Всего: нет



тогда вопрос упрощается smile, как скачать страничку в UTF-8 и ISO-8859-1 ?
и и перекинуть строки из них в xml...
--------------------
Don't ask me why, ask me how.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0511 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.