Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
1-69392
lesa
2002-11-10 17:37
2002.11.21
Findfirst и файлы без расширения?


1-69438
PaRL.
2002-11-10 20:53
2002.11.21
Разделение строки на слова.


1-69382
greenrul
2002-11-10 15:15
2002.11.21
Как преобразовать дату в удобный формат?


1-69235
PrettyFly
2002-11-10 18:22
2002.11.21
ListView вместо DBGridа


4-69624
mifi
2002-10-10 22:40
2002.11.21
как змая IP адрес узнать имя




   Наверх