00001 #ifndef _CTBcstringBase_HXX
00002 #define _CTBcstringBase_HXX 1
00003
00008
00009
00010
00011
00012
00013
00014
00015
00016 class CTBcstringBase {
00017
00018 public:
00019
00020 static void Copy(char* c_dst, CTBint i_size,
00021 const char* c_src);
00022 static void Copy( char* c_dst, CTBint i_size,
00023 const char* c_src, CTBint i_offset, CTBint i_length);
00024
00025 static void Append(char* c_dst, CTBint i_size,
00026 const char* c_src);
00027 static void Append(char* c_dst, CTBint i_size,
00028 const char* c_src, CTBint i_offset = 0,
00029 CTBint i_length = -1);
00030
00031 static void Trim(char* c_dst, CTBint i_size);
00032
00033 static void Toupper(char* c_dst, CTBint i_size);
00034 static void Tolower(char* c_dst, CTBint i_size);
00035
00036 static bool Get(const char* c_src, CTBint i_size,
00037 long& i_val, int i_base = 0);
00038 static bool Get(const char* c_src, CTBint i_size,
00039 unsigned long& i_val, int i_base = 0);
00040 static bool Get(const char* c_src, CTBint i_size,
00041 int& i_val, int i_base = 0);
00042 static bool Get(const char* c_src, CTBint i_size,
00043 unsigned int& i_val, int i_base = 0);
00044 static bool Get(const char* c_src, CTBint i_size,
00045 double& d_val);
00046 static bool Get(const char* c_src, CTBint i_size,
00047 float& f_val);
00048
00049 static CTBint Locate(const char* c_src, CTBint i_size,
00050 char c_char);
00051
00052 static int NField(const char* c_src, CTBint i_size,
00053 const char* c_delim);
00054
00055 static bool LocateField(const char* c_src, CTBint i_size,
00056 CTBint& i_foffset, CTBint& i_flength,
00057 CTBint i_ind, const char* c_delim);
00058
00059 static bool CopyField(char* c_dst, CTBint i_size,
00060 const char* c_src, CTBint i_ind,
00061 const char* c_delim);
00062
00063 static bool InSet(char c, const char* c_set);
00064
00065 static bool GetLine(char* c_dst, CTBint i_size, istream& is);
00066 static bool FromStream(char* c_dst, CTBint i_size, istream& is);
00067
00068 };
00069
00070 #if !(defined(CTB__OutLine) || defined(CTBcstringBase__OutLine))
00071 #include "CTBcstringBase.icc"
00072 #endif
00073
00074 #endif