PDA

Показать полную графическую версию : [решено] Кодировка по умолчанию или скрыто большее...


Алешенька
26-02-2014, 10:00
Привет Всем!
Пишу малюсенький парсер в Delphi XE3. Загружаю страничку, и обрабатываю ее HTML-код. В этом коде есть слова на кириллице; их мне и нужно обнаружить. НО мой метод не работает:
if Pos('руб',Price)<>0 then
В переменной Price в тот момент точно содержится 'руб', но по неизвестной мне причине условие не срабатывает.
Есть только догадки о конфликте кодировок.

ДАНО:

Тип переменной Price - string,
Тип переменной содержащей HTML-код - string;
Кодировка загружаемой странички - UTF-8
Для загрузки странички используется компонент ChromiumOSR (dcef3)

Вопрос:

Почему так происходит? В кодировке ли дело? И как быть? :help:

yurfed
26-02-2014, 10:46
Алешенька, в HEX режиме указать, не прокатывает?

Алешенька
26-02-2014, 11:44
yurfed, 'руб' в hex на utf8 будет 'D180D183D0B1'.
Подскажешь, как это записать? а то я подзабыл совсем малость.

Алешенька
26-02-2014, 12:09
ААААахахахахх! В исходном коде страницы, который отображает Firefox, нужный мне 'руб' записан как "p&# 1091;&# 1073;" (без пробелов)
'p' тут английская!!!

if Pos('руб',Price)<>0 then
, где 'p' английская, отработал на 146%!

Всем спасибо!




© OSzone.net 2001-2012