-class eString : public std::string
-{
-public:
-// constructors
- inline eString() {}
- inline eString(const char* p);
- inline eString(const char* p, int cnt);
- inline eString(const std::string &s);
-// methods
- inline eString left(unsigned int len) const;
- inline eString mid(unsigned int index, unsigned int len=(unsigned)-1) const;
- inline eString right(unsigned int len) const;
- bool isNull() const;
-// operators
- inline operator bool() const;
- inline bool operator!() const;
-// methods with implementation in estring.cpp
- eString& sprintf(char *fmt, ...);
- eString& setNum(int val, int sys=10);
- eString& removeChars(const char fchar);
- eString& strReplace(const char* fstr, const eString& rstr);
- eString& upper();
- int icompare(const eString& s);
-};
-
-eString convertDVBUTF8(unsigned char *data, int len, int table=5);
-eString convertUTF8DVB(const eString &string); // with default ISO8859-5
-eString convertLatin1UTF8(const eString &string);
-int isUTF8(const eString &string);
-
-/////////////////////////////////////////////// Copy Constructors ////////////////////////////////////////////////
-inline eString::eString(const std::string &s)
- :std::string(s)
-{
-}
-
-inline eString::eString(const char* p)
- :std::string(p?p:"") // when the char* p is null, than use ""... otherwise crash...
-{
-}
-
-inline eString::eString(const char* p, int cnt)
- :std::string(p, cnt)
-{
-}
-
-///////////////////////////////////////// eString operator bool /////////////////////////////////////////////////
-inline eString::operator bool() const
-{
-// Returns a bool that contains true if the string longer than 0 Character otherwise false;
- return !empty();
-}