ex35.pp 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. Program Example35;
  2. { Program to demonstrate the
  3. OpenDir,ReadDir, SeekDir and TellDir functions. }
  4. Uses BaseUnix;
  5. Var TheDir : PDir;
  6. ADirent : PDirent;
  7. Entry : Longint;
  8. begin
  9. TheDir:=fpOpenDir('./.');
  10. Repeat
  11. // Entry:=fpTellDir(TheDir);
  12. ADirent:=fpReadDir (TheDir^);
  13. If ADirent<>Nil then
  14. With ADirent^ do
  15. begin
  16. Writeln ('Entry No : ',Entry);
  17. Writeln ('Inode : ',d_fileno);
  18. // Writeln ('Offset : ',d_off);
  19. Writeln ('Reclen : ',d_reclen);
  20. Writeln ('Name : ',pchar(@d_name[0]));
  21. end;
  22. Until ADirent=Nil;
  23. Repeat
  24. Write ('Entry No. you would like to see again (-1 to stop): ');
  25. ReadLn (Entry);
  26. If Entry<>-1 then
  27. begin
  28. // fpSeekDir (TheDir,Entry); // not implemented for various platforms
  29. ADirent:=fpReadDir (TheDir^);
  30. If ADirent<>Nil then
  31. With ADirent^ do
  32. begin
  33. Writeln ('Entry No : ',Entry);
  34. Writeln ('Inode : ',d_fileno);
  35. // Writeln ('Offset : ',off);
  36. Writeln ('Reclen : ',d_reclen);
  37. Writeln ('Name : ',pchar(@d_name[0]));
  38. end;
  39. end;
  40. Until Entry=-1;
  41. fpCloseDir (TheDir^);
  42. end.