home *** CD-ROM | disk | FTP | other *** search
- { This program demonstrates Turbo Pascal include file V1DIR.INC. It shows
- how to traverse the returned directory and how to RELEASE the space it
- contains after you are done with it.
-
- File MATCHCH.PAS contains FUNCTION match_char.
-
- Lew Paper
- E-1212 First National Bank Building
- St. Paul, MN 55101
- 3/17/85}
-
-
- PROGRAM tv1dir;
-
- TYPE
- str255 = STRING[255];
-
- {$IMATCHCH.PAS}
-
- {$I V1DIR.INC}
-
- CONST
- space_15 = ' ';
- total_size_desc = 'Total size = ';
-
- {Function V2 is from the anonymous public domain file WHEN.PAS}
- TYPE v2_string2 = STRING[2];
-
- Function V2(I:Integer):v2_string2;
- Begin
- V2:=Chr(48+I Div 10)+Chr(48+I Mod 10);
- End;
-
- VAR
- input_name: str255;
- output_pointer: dirpoint;
- mark_pointer: intpoint;
- bad_result: BOOLEAN;
- n_files: INTEGER;
- k: INTEGER;
- total_size: REAL;
- i, x: INTEGER;
-
- BEGIN
- WRITELN('Test v1dir');
- WRITELN;
- WRITE('File name: ');
- READLN(input_name);
- n_files := v1dir(input_name, output_pointer, mark_pointer, bad_result);
- IF n_files > 0 THEN
- BEGIN
- total_size := 0.0;
- WRITELN('Directory Records');
- WHILE output_pointer <> NIL DO
- BEGIN
- WITH output_pointer^ DO
- BEGIN
- WRITE(full_name);
- FOR i := LENGTH(full_name) + 1 TO 15 DO WRITE(' ');
- WRITE(hours:2, ':', V2(minutes), ':', V2(seconds), ' ');
- WRITE(month:2, '/', V2(day), '/', year:4, ' ');
- WRITELN(size:8:0);
- total_size := total_size + size;
- output_pointer := next;
- END; {WITH output_pointer^}
- END; {WHILE output_pointer <> NIL}
- RELEASE(mark_pointer);
- END; {IF n_files > 0}
- WRITE(' ', n_files, ' files');
- IF n_files > 0 THEN
- BEGIN
- x := 15 + 9 + 11 + 1;
- GOTOXY(x - LENGTH(total_size_desc), WHEREY);
- WRITE(total_size_desc, total_size:8:0);
- END; {IF n_files > 0}
- WRITELN;
- END.
-
-