n="justify">// друк інформації про фото
procedure PrintCatalog (f: TCatalog);
begin
SaveCatalog (output, f);
end;
// зберегти інформацію про фото
procedure SaveCatalog (var t: TextFile; f: TCatalog);
begin
Writeln (t, 'Файл:', f. name); (t, 'Специфікація:', f. special); (t, 'Дата створення:', DateToStr (f. Create ));
Writeln (t, 'Кількість блоків:', f. blocks); (t);
end;
// перевірка коректності вмісту файлу
function GetValueFromFile (var t: TextFile; var s: string): Boolean;
var p: Integer;
begin Eof (t) then Result: = False
else
Readln (t, s);: = Pos (':', s);
if p = 0 then Result: = False
else
delete (s, 1, p);: = Trim (s);: = True;
end;;;
// перевірка коректності дати
function CheckDate (d: TDate): boolean;
begin
Result: = (d. year in [00.99]) and (d. month in [1.12]) and
(d. day in [1. CountDaysInMonth (d. month, d. year)]);
end;
// завантаження інформації про фото
function LoadCatalog (var t: TextFile; var f: TCatalog): Boolean;
var s: string; d: TDate; num: integer;
begin
Result: = True;
if GetValueFromFile (t, s) and ( s <>'') then f. name: = s
else Result: = False;