home *** CD-ROM | disk | FTP | other *** search
/ Resource for Source: C/C++ / Resource for Source - C-C++.iso / misc_src / cslib16b / include / csfile.h < prev    next >
Encoding:
C/C++ Source or Header  |  1995-11-01  |  2.3 KB  |  98 lines

  1. /***********************************************************************
  2.  
  3.                                       CSDB Library, Version 1.6.b 
  4.  
  5.        A simple class to overcome problems with
  6.        file names.
  7.  
  8.                                            Copyright(c) 1994,1995 
  9.                                                            Combis 
  10.                                                   The Netherlands 
  11. ***********************************************************************/
  12.  
  13. #ifndef __CSFILE_H
  14. #define __CSFILE_H
  15.  
  16.  
  17. #ifndef __DIR_H
  18.   #include <dir.h>
  19. #endif
  20. #ifndef __STRING_H
  21.   #include <string.h>
  22. #endif
  23. #ifndef __STDIO_H
  24.   #include <stdio.h>
  25. #endif
  26.  
  27. #ifndef __CSTOOLS_H
  28.   #include "cstools.h"
  29. #endif
  30. #ifndef __CSEDSTR_H
  31.   #include "csedstr.h"
  32. #endif
  33.  
  34.  
  35. class FILE_NAME
  36. {
  37.  
  38. private:
  39.   STR fn;      // user input UNCHANGED
  40.   STR direc;   // default path    ( including DRIVE)
  41.   STR exten;
  42.  
  43. protected:
  44.   void combine(void);
  45.  
  46. ////////////////////////////////////////////////////////////////////////
  47. ////////////////////// PUBLIC FUNCTIONS ////////////////////////////////
  48. ////////////////////////////////////////////////////////////////////////
  49.  
  50.  
  51. public:
  52.   void set_dir(CSCHAR *s);
  53.   void set_name(CSCHAR *s)    { fn=s; set_dir_cur(); }
  54.   int  exist(void)          { return file_exist(name_dpfe()); }
  55.   int  file_delete(void)      { return remove(name_dpfe()); }
  56.   CSCHAR *name(void)          { return ((CSCHAR *)fn); }
  57.  
  58.   void set_ext(CSCHAR *s);
  59.   void set_dir_cur(void);
  60.   void del_ext(void);
  61.   CSCHAR *extension(void)     { return exten; }
  62.  
  63.   void force_ext(CSCHAR *s)   { del_ext(); set_ext(s); }
  64.  
  65.   CSCHAR *name_dpfe(CSCHAR *n);
  66.   CSCHAR *name_dp(CSCHAR *n);
  67.   CSCHAR *name_dpf(CSCHAR *n);
  68.   CSCHAR *name_pfe(CSCHAR *n);
  69.   CSCHAR *name_pf(CSCHAR *n);
  70.   CSCHAR *name_fe(CSCHAR *n);
  71.   CSCHAR *name_f(CSCHAR *n);
  72.   CSCHAR *name_e(CSCHAR *n);
  73.   CSCHAR *name_p(CSCHAR *n);
  74.   CSCHAR *name_d(CSCHAR *n);
  75.  
  76.   CSCHAR *name_dpfe(void);
  77.   CSCHAR *name_dp(void);
  78.   CSCHAR *name_dpf(void);
  79.   CSCHAR *name_pfe(void);
  80.   CSCHAR *name_pf(void);
  81.   CSCHAR *name_fe(void);
  82.   CSCHAR *name_f(void);
  83.   CSCHAR *name_e(void);
  84.   CSCHAR *name_p(void);
  85.   CSCHAR *name_d(void);
  86.  
  87.  
  88.   int operator==(FILE_NAME& fn);
  89.  
  90.   FILE_NAME(void);
  91.  
  92.  
  93.  
  94. };
  95.  
  96.  
  97. #endif
  98.