Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.21;
Скачать: CL | DM;

Вниз

Проверка правильности типизованого файла   Найти похожие ветки 

 
VJar   (2002-11-12 17:30) [0]

Допустим у меня есть такой тип:

Type TAnketa = Record
Name = string[10];
Surname = string[20]
Age = word;
end

Var F:File of TAnketa;

Как мне, открыв файл F, проверить имеет ли даный
файл информацию типа TAnketa, т.е. проверить
подходит ли мне этот файл для удачного чтения?


 
MBo ©   (2002-11-12 17:34) [1]

да в общем, только проверкой, входят ли байты, располагающиеся в местах, где должны быть строки, в диапазон печатных ASCII-символов (или, скажем, только русских букв)


 
Smithson ©   (2002-11-12 17:40) [2]

Сделай еще такой тип

type
TFileHeader = record
SIGNATURE: Array[1..3] of Char;
Version: String[10];
Info: String[50];
// например. Или еще какие поля...
end;


И записывай его в начало файла. Тогда прочитав его из испытуемого файла (елси ты задавал в SIGNATURE уникальные символы), ты по ним сможешь определить, что у тебя за файл - твои или нет.
Можно еще сделать функцию, проверяющую наоличие в начале файле заданой сигнатуры.
Один раз не поленисмь и самому много раз пригодится!


 
KoluChi ©   (2002-11-12 17:41) [3]

Попробавать прочитать - если не получиться, значит не подходит :)


 
Андрей Прокофьев ©   (2002-11-12 17:45) [4]

Поместить в первый запись СВОЮ информацию
(например
Name = "Файл"
Surname = "анкет",
Age = 77;)

и проверять ее при открытии
или см MBo



Страницы: 1 вся ветка

Текущий архив: 2002.11.21;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
1-69376
Ученик
2002-11-10 12:23
2002.11.21
31 число в какой декаде


14-69505
Forever
2002-10-01 18:25
2002.11.21
Как убрать


3-69186
Lepa
2002-10-31 22:28
2002.11.21
Как обновлять данные нескольких таблиц при работе программы?


1-69385
s_karm
2002-11-10 12:13
2002.11.21
инсталяция


1-69229
BALU1111
2002-11-11 15:38
2002.11.21
Отключение Task Manager