Вопрос № 98650: Здравствуйте Уважаемые! Помогите мне пожалуйста обработать бинарный файл.Структура его к сожалению написана на Си.
В начале файла идёт заголовок файла
struct ticket_zag
{ char name_m[10];
short n_r;
short n_sl; };
его н...Вопрос № 98692: Где можно посмотреть описание класса Xdom для Delphi 7 ?...Вопрос № 98734: Доброго времени суток!
Пишу программу которая достает HTML-код "http://quote.ru", для дальнейшего парсинга. На сайте я настроил какие мне показывать котировки.
HTML - код я достаю используя компонент IdHTTP.get(url).
Функция get...
Вопрос № 98.650
Здравствуйте Уважаемые! Помогите мне пожалуйста обработать бинарный файл.Структура его к сожалению написана на Си.
В начале файла идёт заголовок файла
struct ticket_zag
{ char name_m[10];
short n_r;
short n_sl; };
его надо прочитать в переменные name, nr , nsl read'ом примерно так:
F:=TFileStream.Create(FileName,fmOpenRead);
if F.position < sizeof(ticket_zag) then
begin
//читаем заголовок файла
F.read(name, sizeof(ticket_zag .name_m));
F.read(nr, sizeof(ticket_zag .n_r));
F.read(nsl, sizeof(ticket_zag_sl));
end;
//здесь я запутался какими типами данных надо описывать и переменные и структуру
Далее идёт обработка блоков с данными у каждого из которых есть свой заголовок блока следующей структуры
struct ticket_reg_exp
{ float time;
unsigned short pr_rs: 2,
n_a : 14;
short k_kdg; };
while (F.position<F.size) do
begin
...........
//заголовок блока тоже надо прочитать в переменные t,prrs,na , kdg
//проблема так же с описанием и ещё как читать этот unsigned short pr_rs: 2, n_a : 14; в 2-е переменные
Размер самого блока вычисляется так: size = ((nr * nsl)/8 + 2*sizeof(int)) * kdg ;
//далее проход по блоку и обработка которую я делаю сам
//далее переход на следующий заголовок ,вычисление размера блока,переход на обработку следующего блока и тд до конца файла
Как мне лучше всего организовать прохождение по файлу и описать типы переменных?
Отвечает: Градов Юрий Михайлович
Здравствуйте, Зотов Геннадий Александрович!
Посмотрите пример из DelphiWorld в приложении:
Приложение:
--------- Глаза боятся - руки делают!
Ответ отправил: Градов Юрий Михайлович (статус: Студент)
Ответ отправлен: 16.08.2007, 21:12 Оценка за ответ: 2 Комментарий оценки: этот пример с DelphiWorld к чему он тут,неужели что бы перевести 2 структуры с си и процедурки с 2- 3 мя циклами нужно столько кода,я разве что то написал о работе с memo
Отвечает: Виктор Пырлик
Здравствуйте, Зотов Геннадий Александрович!
В приложении дан код. Протестил, работает. Думаю, адаптировать для своих нужд вам не составт труда, основные преобразования и чтение выполнены, как и определены структуры (записи) аналогичные для вашего вопроса.
Приложение:
--------- Если ничего не помогло - надо читать инструкцию
Ответ отправил: Виктор Пырлик (статус: Студент)
Ответ отправлен: 17.08.2007, 00:58
Вопрос № 98.692
Где можно посмотреть описание класса Xdom для Delphi 7 ?
Отправлен: 17.08.2007, 05:20
Вопрос задал: Alexei_FAQ (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Coupler
Здравствуйте, Alexei_FAQ!
На этой странице Вы можете найти документацию по Xdom.
Ответ отправил: Coupler (статус: Практикант)
Ответ отправлен: 17.08.2007, 05:27 Оценка за ответ: 5
Вопрос № 98.734
Доброго времени суток!
Пишу программу которая достает HTML-код "http://quote.ru", для дальнейшего парсинга. На сайте я настроил какие мне показывать котировки.
HTML - код я достаю используя компонент IdHTTP.get(url).
Функция get возвращает мне HTML-код, но в нем совершенно другие котировки которые меня не интересуют. В чем может быть проблема?
Отвечает: Coupler
Здравствуйте, Ибрагимов Дмитрий Владимирович!
В каком смысле другие котировки? Посмотрите код в приложении - он скачивает страницу http://quote.ru и сохраняет ее на диск. После загрузки можете "разобрать" TStringList для сохранения нужных котировок. Пример этого (программа показывает курсы валют) присоединен к ответу.
Приложение:
Прикреплённый файл: Загрузить >> Срок хранения файла на сервере RusFAQ.ru составляет 30 суток с момента отправки ответа.
Ответ отправил: Coupler (статус: Практикант)
Ответ отправлен: 17.08.2007, 15:50
Отвечает: Сухомлин Кирилл Владимирович
Здравствуйте, Ибрагимов Дмитрий Владимирович!
Используйте компонент TWebBrowser. Он работает на движке IE, по умолчанию разделяет с ним все куки и настройки. А также имеет удобный встроенный HTML-парсер.
--------- Не узнаешь - не попробуешь.