home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PASCAL / TPTOOL4.ZIP / REMPATH.INC < prev    next >
Encoding:
Text File  |  1987-06-14  |  1.5 KB  |  92 lines

  1.  
  2. const rempath_tag: string[90]
  3.    = #0'@(#)CURRENT_FILE LAST_UPDATE Remove path prefix library 2.0'#0;
  4. #log Remove path prefix library 2.0
  5.  
  6. (*
  7.  * remove_path - remove pathname prefix from a filename
  8.  *
  9.  *)
  10.  
  11. function remove_path(name: anystring): anystring;
  12. var
  13.    n: anystring;
  14.    i: integer;
  15. begin
  16.    n := '';
  17.    for i := 1 to LEN(name) do
  18.       if name[i] in [':','/','\'] then
  19.          n := ''
  20.       else
  21.          n := n + name[i];
  22.  
  23.    remove_path := n;
  24. end;
  25.  
  26.  
  27. (*
  28.  * path_only - return pathname prefix from a filename
  29.  *
  30.  *)
  31.  
  32. function path_only(name: anystring): anystring;
  33. var
  34.    n: anystring;
  35.    i: integer;
  36. begin
  37.    n := name;
  38.    i := LEN(n);
  39.    while (i > 0) and (not (name[i] in [':','/','\'])) do
  40.       i := i -1;
  41.  
  42.    n[0] := chr(i);
  43.  
  44.    if (n <> '') and not (n[LEN(n)] in ['\','/']) then
  45.       n := n + '\';
  46.  
  47.    path_only := n;
  48. end;
  49.  
  50.  
  51. (*
  52.  * remove_ext - remove filename .ext
  53.  *
  54.  *)
  55.  
  56. function remove_ext(name: anystring): anystring;
  57. var
  58.    n: anystring;
  59.    i: integer;
  60. begin
  61.    n := name;
  62.    i := LEN(n);
  63.    while (i > 0) and (name[i] <> '.') do
  64.       i := i -1;
  65.  
  66.    if name[i] = '.' then
  67.       n[0] := chr(i-1);
  68.  
  69.    remove_ext := n;
  70. end;
  71.  
  72.  
  73. (*
  74.  * ext_only - return only the ext portion of a filename
  75.  *
  76.  *)
  77.  
  78. function ext_only(name: anystring): anystring;
  79. var
  80.    i: integer;
  81. begin
  82.    i := LEN(name);
  83.    while (i > 0) and (name[i] <> '.') do
  84.       i := i -1;
  85.  
  86.    if name[i] = '.' then
  87.       ext_only := copy(name,i+1,99)
  88.    else
  89.       ext_only := '';
  90. end;
  91.  
  92.