home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 3 / AACD03.BIN / AACD / Programming / sofa / archive / SmallEiffel.lha / SmallEiffel / lib_show / directory / example01.e < prev    next >
Text File  |  1999-06-05  |  1KB  |  52 lines

  1. class EXAMPLE01
  2. --
  3. -- This example shows how to list the contents of a directory
  4. -- using class DIRECTORY.
  5. --
  6.  
  7. creation make
  8.  
  9. feature {NONE}
  10.  
  11.    make is
  12.       do
  13.          if argument_count /= 1 then
  14.             io.put_string("usage : example01 <directory_name>%N");
  15.          else
  16.             list_directory(argument(1));
  17.          end;
  18.       end;
  19.  
  20.    list_directory(path: STRING) is
  21.       local
  22.          d: DIRECTORY;
  23.          i: INTEGER;
  24.       do
  25.          std_output.put_string("Trying to list %"");
  26.          std_output.put_string(path);
  27.          std_output.put_string("%".%N");
  28.          !!d.connect_to(path);
  29.          if d.is_connected then
  30.             std_output.put_integer(d.count);
  31.             std_output.put_string(" item(s) (file or directory) in %"");
  32.             std_output.put_string(d.path);
  33.             std_output.put_string("%".%N");
  34.             from
  35.                i := d.lower;
  36.             until
  37.                i > d.count
  38.             loop
  39.                std_output.put_character('%T');
  40.                std_output.put_string(d.name(i));
  41.                std_output.put_character('%N');
  42.                i := i + 1;
  43.             end;
  44.          else
  45.             std_output.put_string("Unable to open directory %"");
  46.             std_output.put_string(path);
  47.             std_output.put_string("%".%N");
  48.          end;
  49.       end;
  50.  
  51. end -- EXAMPLE01
  52.