Показать сообщение отдельно
  #9  
Старый 22.08.2011, 14:34
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Итак пойдем плясать от печки:
1. У вас возможны 3 вида файла: IA.ICAMA, IA.ICIAR, IA.ICINA
Последние 5 букв видимо расширение по которому вы будете определять тип данных в конкретном файле.
Для первого типа файла имеем такое описание:
Цитата:
 Длина блока: 8192 байт;
 Длина записи : 8192 байт;
 Формат записи : фиксированный (F).
Значит BlockRead нам не очень подходит для чтения. Самый простой описатель для чтения будет таким:
Код:
Type 
ICAMA = record
 Data: Array[1..8192] of byte;
end;

И код для чтения данных записями будет такой:
Код:
Type 
ICAMA = record
 Data: Array[1..8192] of byte;
end;

Var
 F: File of ICAMA;
 R: ICAMA;
begin
 AssignFile(F, 'c:\IA.ICAMA');
 Reset(F);
 while not Eof(F) do Read(F, R);
 CloseFile(F);
end.
Данный код ничего не возвращает, но он честно читает ваш файл.
А вот что касается чтения содержимого каждой из записи - это уже скорее всего в работу.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием