00001 #ifndef _WINC_STRING
00002 #define _WINC_STRING
00003
00004 namespace WXP {
00005 class String {
00006 int len;
00007 int maxlen;
00008 char *data;
00009 char *ptr;
00010
00011 public:
00012 int init();
00013 int init( int length );
00014 String( int length );
00015 String();
00016 String( const char *str );
00017 String( const String &string );
00018 String operator=( const String &string );
00019 ~String();
00020 int set( const char *str );
00021 int set( const String &string );
00022 int reset();
00023 bool valid();
00024 bool isAlphaNum();
00025 const char *get();
00026 const char *get( int ind );
00027 char getChar( int ind );
00028 int length();
00029 int maxLength();
00030 int clear();
00031 int resize( int length );
00032 int resize();
00033 int rewind();
00035 inline const char *getPtr(){ return ptr; };
00036 int scanf( const char *mess, ... );
00037 int scanp( const char *mess, ... );
00038 int printf( const char *mess, ... );
00039 int aprintf( const char *mess, ... );
00040 int replace( char tar, char rep );
00041 int trimWS();
00042 int stripWS();
00043 int chop();
00044 int upCase();
00045 int lowCase();
00046 int index( char ch );
00047 bool equal( const char *str );
00048 bool equal( const char *str, int num );
00049 bool iequal( const char *str );
00050 bool iequal( const char *str, int num );
00051 bool contains( const char *str );
00052 int occurs( char ch );
00053 int copy( const char *str );
00054 int copy( String &str );
00055 int copy( const char *str, int num );
00056 int append( const char *str );
00057 int append( String &str );
00058 int append( const char *str, int num );
00059 int append( char str );
00060 int trunc( int ind );
00061 int print();
00062 };
00063 }
00064 #endif