![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Считывание данных со стрима
Camaro © (2013-02-15 16:19:00)есть запись вида:
PHeader = ^THeader;
THeader = packed record
Signature: TSignature;
Version: TVersion;
end;
размер записи 8 байт, она пишется в стрим. после нее пишутся какие-то данные длинной 8 б.
[8 байт ][8 байт ][8 байт ][8 байт ][8 байт ][8 байт ]
------------------------------------------------------
[THeader][Данные ][THeader][Данные ][THeader][Данные ]
если при считывании данные происходит ошибка, нужно перескочить на следующий хидер, чет на поиму как это сделать.
Anatoly Podgoretsky (2013-02-16 07:46:00) [1]> turbouser (15.02.2013 17:47:04) [4]
“устанавливаем позицию + “
Вот это и делай.
turbouser (2013-02-15 17:47:00) [2]запоминаем позицию
try
читаем 8 байт
except
обрабатываем ошибку
end
устанавливаем позицию + 8 байт
в чем проблема то?
Camaro (2013-02-15 17:04:00) [3]
> Обычно в Header пишут ещё и длину блока данных.
длина блока данных постоянная - 8 байт
Ega23 (2013-02-15 17:01:00) [4]Обычно в Header пишут ещё и длину блока данных.
turbouser (2013-02-15 16:50:00) [5]И как происходит считывание?