Represents a multibyte character string, ensuring that these get handled correctly by databases that differentiate between multibyte and single byte character strings.
More...
|
| RWDBMBString () |
|
| RWDBMBString (RWSize_T ic) |
|
| RWDBMBString (const RWCString &S) |
|
| RWDBMBString (const RWDBMBString &str) |
|
| RWDBMBString (const char *a) |
|
| RWDBMBString (const char *a, size_t N) |
|
| RWDBMBString (char c) |
|
| RWDBMBString (char c, size_t N) |
|
| RWDBMBString (const RWCSubString &SS) |
|
| RWDBMBString (unsigned char c) |
|
| RWDBMBString (signed char c) |
|
RWDBMBString & | operator= (const char *cs) |
|
RWDBMBString & | operator= (const RWCString &str) |
|
RWDBMBString & | operator= (const RWDBMBString &str) |
|
| RWCString () |
|
| RWCString (const RWCString &str) |
|
| RWCString (RWCString &&str) |
|
| RWCString (const SubString &str) |
|
| RWCString (const ConstSubString &str) |
|
| RWCString (const std::string &str) |
|
| RWCString (const char *str) |
|
| RWCString (const char *str, size_t len) |
|
| RWCString (char c) |
|
| RWCString (signed char c) |
|
| RWCString (unsigned char c) |
|
| RWCString (char c, size_t count) |
|
| RWCString (RWSize_T cap) |
|
RWCString & | append (const RWCString &str) |
|
RWCString & | append (const SubString &str) |
|
RWCString & | append (const ConstSubString &str) |
|
RWCString & | append (const RWCString &str, size_t len) |
|
RWCString & | append (const std::string &str) |
|
RWCString & | append (const std::string &str, size_t len) |
|
RWCString & | append (const char *str) |
|
RWCString & | append (const char *str, size_t len) |
|
RWCString & | append (char c, size_t count=1) |
|
RWCString & | assign (const RWCString &str) |
|
RWCString & | assign (const std::string &str) |
|
RWCString & | assign (const SubString &str) |
|
RWCString & | assign (const ConstSubString &str) |
|
RWCString & | assign (const char *str) |
|
RWCString & | assign (const char *str, size_t len) |
|
RWCString & | assign (char c, size_t count=1) |
|
RWspace | binaryStoreSize () const |
|
size_t | capacity () const |
|
size_t | capacity (size_t cap) |
|
int | collate (const RWCString &str) const |
|
int | collate (const std::string &str) const |
|
int | collate (const char *str) const |
|
int | compareTo (const RWCString &str, caseCompare cmp=exact) const |
|
int | compareTo (const SubString &str, caseCompare cmp=exact) const |
|
int | compareTo (const ConstSubString &str, caseCompare cmp=exact) const |
|
int | compareTo (const RWCString *str, caseCompare cmp=exact) const |
|
int | compareTo (const std::string &str, caseCompare cmp=exact) const |
|
int | compareTo (const std::string *str, caseCompare cmp=exact) const |
|
int | compareTo (const char *str, caseCompare cmp=exact) const |
|
int | compareTo (const char *str, size_t len, caseCompare cmp=exact) const |
|
bool | contains (const RWCString &str, caseCompare cmp=exact) const |
|
bool | contains (const SubString &str, caseCompare cmp=exact) const |
|
bool | contains (const ConstSubString &str, caseCompare cmp=exact) const |
|
bool | contains (const std::string &str, caseCompare cmp=exact) const |
|
bool | contains (const char *str, caseCompare cmp=exact) const |
|
bool | contains (const char *str, size_t len, caseCompare cmp=exact) const |
|
const char * | data () const |
|
size_t | first (char c) const |
|
size_t | first (char c, size_t) const |
|
size_t | first (const char *str) const |
|
size_t | first (const char *str, size_t len) const |
|
size_t | firstNotOf (char c, size_t pos=0) const |
|
size_t | firstNotOf (const char *str, size_t pos=0) const |
|
size_t | firstNotOf (const char *str, size_t pos, size_t len) const |
|
size_t | firstNotOf (const RWCString &str, size_t pos=0) const |
|
size_t | firstNotOf (const SubString &str, size_t pos=0) const |
|
size_t | firstNotOf (const ConstSubString &str, size_t pos=0) const |
|
size_t | firstNotOf (const std::string &str, size_t pos=0) const |
|
size_t | firstOf (char c, size_t pos=0) const |
|
size_t | firstOf (const char *str, size_t pos=0) const |
|
size_t | firstOf (const char *str, size_t pos, size_t len) const |
|
size_t | firstOf (const RWCString &str, size_t pos=0) const |
|
size_t | firstOf (const SubString &str, size_t pos=0) const |
|
size_t | firstOf (const ConstSubString &str, size_t pos=0) const |
|
size_t | firstOf (const std::string &str, size_t pos=0) const |
|
unsigned | hash (caseCompare cmp=exact) const |
|
size_t | index (const RWCString &pat, size_t start=0, caseCompare cmp=exact) const |
|
size_t | index (const SubString &pat, size_t start=0, caseCompare cmp=exact) const |
|
size_t | index (const ConstSubString &pat, size_t start=0, caseCompare cmp=exact) const |
|
size_t | index (const RWCString &pat, size_t patlen, size_t start, caseCompare cmp) const |
|
size_t | index (const std::string &pat, size_t start=0, caseCompare cmp=exact) const |
|
size_t | index (const std::string &pat, size_t patlen, size_t start, caseCompare cmp) const |
|
size_t | index (const char *pat, size_t start=0, caseCompare cmp=exact) const |
|
size_t | index (const char *pat, size_t patlen, size_t start, caseCompare cmp) const |
|
size_t | index (const char pat, size_t start=0, caseCompare cmp=exact) const |
|
size_t | index (const RWCRegexp &re, size_t start=0) const |
|
size_t | index (const RWCRegexp &re, size_t *ext, size_t start=0) const |
|
size_t | index (const RWCRExpr &re, size_t start=0) const |
|
size_t | index (const RWCRExpr &re, size_t *ext, size_t start=0) const |
|
size_t | index (const char *re, size_t *ext, size_t start=0) const |
|
RWCString & | insert (size_t pos, const RWCString &str) |
|
RWCString & | insert (size_t pos, const SubString &str) |
|
RWCString & | insert (size_t pos, const ConstSubString &str) |
|
RWCString & | insert (size_t pos, const RWCString &str, size_t len) |
|
RWCString & | insert (size_t pos, const std::string &str) |
|
RWCString & | insert (size_t pos, const std::string &str, size_t len) |
|
RWCString & | insert (size_t pos, const char *str) |
|
RWCString & | insert (size_t pos, const char *str, size_t len) |
|
RWCString & | insert (size_t pos, char c, size_t count) |
|
bool | isAscii () const |
|
bool | isNull () const |
|
size_t | last (char c) const |
|
size_t | last (char c, size_t) const |
|
size_t | last (const char *str) const |
|
size_t | last (const char *str, size_t len) const |
|
size_t | lastNotOf (char c, size_t pos=RW_NPOS) const |
|
size_t | lastNotOf (const char *str, size_t pos=RW_NPOS) const |
|
size_t | lastNotOf (const char *str, size_t pos, size_t len) const |
|
size_t | lastNotOf (const RWCString &str, size_t pos=RW_NPOS) const |
|
size_t | lastNotOf (const SubString &str, size_t pos=RW_NPOS) const |
|
size_t | lastNotOf (const ConstSubString &str, size_t pos=RW_NPOS) const |
|
size_t | lastNotOf (const std::string &str, size_t pos=RW_NPOS) const |
|
size_t | lastOf (char c, size_t pos=RW_NPOS) const |
|
size_t | lastOf (const char *str, size_t pos=RW_NPOS) const |
|
size_t | lastOf (const char *str, size_t pos, size_t len) const |
|
size_t | lastOf (const RWCString &str, size_t pos=RW_NPOS) const |
|
size_t | lastOf (const SubString &str, size_t pos=RW_NPOS) const |
|
size_t | lastOf (const ConstSubString &str, size_t pos=RW_NPOS) const |
|
size_t | lastOf (const std::string &str, size_t pos=RW_NPOS) const |
|
size_t | length () const |
|
SubString | match (const RWCRExpr &re) |
|
ConstSubString | match (const RWCRExpr &) const |
|
SubString | match (const RWCRExpr &re, size_t start) |
|
ConstSubString | match (const RWCRExpr &re, size_t start) const |
|
size_t | mbLength () const |
|
| operator const char * () const |
|
char & | operator() (size_t i) |
|
char | operator() (size_t i) const |
|
SubString | operator() (size_t start, size_t len) |
|
ConstSubString | operator() (size_t start, size_t len) const |
|
SubString | operator() (const RWCRegexp &re) |
|
ConstSubString | operator() (const RWCRegexp &re) const |
|
SubString | operator() (const RWCRegexp &re, size_t start) |
|
ConstSubString | operator() (const RWCRegexp &re, size_t start) const |
|
RWCString & | operator+= (const RWCString &str) |
|
RWCString & | operator+= (const SubString &str) |
|
RWCString & | operator+= (const ConstSubString &str) |
|
RWCString & | operator+= (const std::string &str) |
|
RWCString & | operator+= (const char *str) |
|
RWCString & | operator+= (char c) |
|
RWCString & | operator= (const RWCString &str) |
|
RWCString & | operator= (RWCString &&str) |
|
RWCString & | operator= (const SubString &str) |
|
RWCString & | operator= (const ConstSubString &str) |
|
RWCString & | operator= (const std::string &str) |
|
RWCString & | operator= (const char *str) |
|
RWCString & | operator= (char c) |
|
char & | operator[] (char i) |
|
char | operator[] (char i) const |
|
char & | operator[] (signed char i) |
|
char | operator[] (signed char i) const |
|
char & | operator[] (short i) |
|
char | operator[] (short i) const |
|
char & | operator[] (int i) |
|
char | operator[] (int i) const |
|
char & | operator[] (long i) |
|
char | operator[] (long i) const |
|
char & | operator[] (long long i) |
|
char | operator[] (long long i) const |
|
char & | operator[] (unsigned char i) |
|
char | operator[] (unsigned char i) const |
|
char & | operator[] (unsigned short i) |
|
char | operator[] (unsigned short i) const |
|
char & | operator[] (unsigned int i) |
|
char | operator[] (unsigned int i) const |
|
char & | operator[] (unsigned long i) |
|
char | operator[] (unsigned long i) const |
|
char & | operator[] (unsigned long long i) |
|
char | operator[] (unsigned long long i) const |
|
RWCString & | prepend (const RWCString &str) |
|
RWCString & | prepend (const SubString &str) |
|
RWCString & | prepend (const ConstSubString &str) |
|
RWCString & | prepend (const RWCString &str, size_t len) |
|
RWCString & | prepend (const std::string &str) |
|
RWCString & | prepend (const std::string &str, size_t len) |
|
RWCString & | prepend (const char *str) |
|
RWCString & | prepend (const char *str, size_t len) |
|
RWCString & | prepend (char c, size_t count=1) |
|
std::istream & | readFile (std::istream &strm) |
|
std::istream & | readLine (std::istream &strm, bool skipWhite=true) |
|
std::istream & | readString (std::istream &strm) |
|
std::istream & | readToDelim (std::istream &strm, char delim= '\n') |
|
std::istream & | readToken (std::istream &strm) |
|
RWCString & | remove (size_t pos) |
|
RWCString & | remove (size_t pos, size_t len) |
|
RWCString & | replace (size_t pos, size_t len, const RWCString &str) |
|
RWCString & | replace (size_t pos, size_t len, const SubString &str) |
|
RWCString & | replace (size_t pos, size_t len, const ConstSubString &str) |
|
RWCString & | replace (size_t pos, size_t len, const RWCString &str, size_t strLen) |
|
RWCString & | replace (size_t pos, size_t len, const std::string &str) |
|
RWCString & | replace (size_t pos, size_t len, const std::string &str, size_t strLen) |
|
RWCString & | replace (size_t pos, size_t len, const char *str) |
|
RWCString & | replace (size_t pos, size_t len, const char *str, size_t strLen) |
|
RWCString & | replace (const RWCRExpr &re, const RWCString &str, scopeType scope=one) |
|
RWCString & | replace (const RWCRExpr &re, const char *str, scopeType scope=one) |
|
void | resize (size_t len) |
|
size_t | rindex (const RWCString &pat, size_t end=RW_NPOS, caseCompare cmp=exact) const |
|
size_t | rindex (const SubString &pat, size_t end=RW_NPOS, caseCompare cmp=exact) const |
|
size_t | rindex (const ConstSubString &pat, size_t end=RW_NPOS, caseCompare cmp=exact) const |
|
size_t | rindex (const RWCString &pat, size_t patlen, size_t end, caseCompare cmp) const |
|
size_t | rindex (const std::string &pat, size_t end=RW_NPOS, caseCompare cmp=exact) const |
|
size_t | rindex (const std::string &pat, size_t patlen, size_t end, caseCompare cmp) const |
|
size_t | rindex (const char *pat, caseCompare cmp) const |
|
size_t | rindex (const char *pat, size_t end=RW_NPOS, caseCompare cmp=exact) const |
|
size_t | rindex (const char *pat, size_t patlen, size_t end, caseCompare cmp) const |
|
size_t | rindex (const char pat, size_t end=RW_NPOS, caseCompare cmp=exact) const |
|
void | shrink () |
|
std::string & | std () |
|
const std::string & | std () const |
|
SubString | strip (stripType st=trailing, char c= ' ') |
|
ConstSubString | strip (stripType st=trailing, char c= ' ') const |
|
SubString | subString (const char *pat, size_t start=0, caseCompare cmp=exact) |
|
ConstSubString | subString (const char *pat, size_t start=0, caseCompare cmp=exact) const |
|
void | swap (RWCString &str) |
|
void | toLower () |
|
void | toUpper () |
|
|
enum | caseCompare { exact,
ignoreCase,
ignoreCaseStrict
} |
|
typedef RWCConstSubString | ConstSubString |
|
enum | scopeType { one,
all
} |
|
enum | stripType { leading,
trailing,
both
} |
|
typedef RWCSubString | SubString |
|
static size_t | byteCount (const char *str, size_t nChars=RW_NPOS) |
|
static unsigned | hash (const RWCString &str) |
|
static size_t | mbLength (const char *str, size_t nBytes=RW_NPOS) |
|
bool | operator!= (const RWCString &lhs, const RWCString &rhs) |
|
bool | operator!= (const RWCString &lhs, const RWCSubString &rhs) |
|
bool | operator!= (const RWCSubString &lhs, const RWCString &rhs) |
|
bool | operator!= (const RWCString &lhs, const RWCConstSubString &rhs) |
|
bool | operator!= (const RWCConstSubString &lhs, const RWCString &rhs) |
|
bool | operator!= (const RWCString &lhs, const std::string &rhs) |
|
bool | operator!= (const std::string &lhs, const RWCString &rhs) |
|
bool | operator!= (const RWCString &lhs, const char *rhs) |
|
bool | operator!= (const char *lhs, const RWCString &rhs) |
|
bool | operator!= (const RWCString &lhs, char rhs) |
|
bool | operator!= (char lhs, const RWCString &rhs) |
|
RWCString | operator+ (const RWCString &lhs, const RWCString &rhs) |
|
RWCString | operator+ (const RWCString &lhs, const RWCSubString &rhs) |
|
RWCString | operator+ (const RWCSubString &lhs, const RWCString &rhs) |
|
RWCString | operator+ (const RWCString &lhs, const RWCConstSubString &rhs) |
|
RWCString | operator+ (const RWCConstSubString &lhs, const RWCString &rhs) |
|
RWCString | operator+ (const RWCString &lhs, const std::string &rhs) |
|
RWCString | operator+ (const std::string &lhs, const RWCString &rhs) |
|
RWCString | operator+ (const RWCString &lhs, const char *rhs) |
|
RWCString | operator+ (const char *lhs, const RWCString &rhs) |
|
RWCString | operator+ (const RWCSubString &lhs, const RWCSubString &rhs) |
|
RWCString | operator+ (const RWCSubString &lhs, const RWCConstSubString &rhs) |
|
RWCString | operator+ (const RWCConstSubString &lhs, const RWCSubString &rhs) |
|
RWCString | operator+ (const RWCSubString &lhs, const std::string &rhs) |
|
RWCString | operator+ (const std::string &lhs, const RWCSubString &rhs) |
|
RWCString | operator+ (const RWCSubString &lhs, const char *rhs) |
|
RWCString | operator+ (const char *lhs, const RWCSubString &rhs) |
|
RWCString | operator+ (const RWCConstSubString &lhs, const RWCConstSubString &rhs) |
|
RWCString | operator+ (const RWCConstSubString &lhs, const std::string &rhs) |
|
RWCString | operator+ (const std::string &lhs, const RWCConstSubString &rhs) |
|
RWCString | operator+ (const RWCConstSubString &lhs, const char *rhs) |
|
RWCString | operator+ (const char *lhs, const RWCConstSubString &rhs) |
|
bool | operator< (const RWCString &lhs, const RWCString &rhs) |
|
bool | operator< (const RWCString &lhs, const RWCSubString &rhs) |
|
bool | operator< (const RWCSubString &lhs, const RWCString &rhs) |
|
bool | operator< (const RWCString &lhs, const RWCConstSubString &rhs) |
|
bool | operator< (const RWCConstSubString &lhs, const RWCString &rhs) |
|
bool | operator< (const RWCString &lhs, const std::string &rhs) |
|
bool | operator< (const std::string &lhs, const RWCString &rhs) |
|
bool | operator< (const RWCString &lhs, const char *rhs) |
|
bool | operator< (const char *lhs, const RWCString &rhs) |
|
bool | operator< (const RWCString &lhs, char rhs) |
|
bool | operator< (char lhs, const RWCString &rhs) |
|
RWFile & | operator<< (RWFile &file, const RWCString &str) |
|
RWvostream & | operator<< (RWvostream &vos, const RWCString &str) |
|
std::ostream & | operator<< (std::ostream &os, const RWCString &str) |
|
bool | operator<= (const RWCString &lhs, const RWCString &rhs) |
|
bool | operator<= (const RWCString &lhs, const RWCSubString &rhs) |
|
bool | operator<= (const RWCSubString &lhs, const RWCString &rhs) |
|
bool | operator<= (const RWCString &lhs, const RWCConstSubString &rhs) |
|
bool | operator<= (const RWCConstSubString &lhs, const RWCString &rhs) |
|
bool | operator<= (const RWCString &lhs, const std::string &rhs) |
|
bool | operator<= (const std::string &lhs, const RWCString &rhs) |
|
bool | operator<= (const RWCString &lhs, const char *rhs) |
|
bool | operator<= (const char *lhs, const RWCString &rhs) |
|
bool | operator<= (const RWCString &lhs, char rhs) |
|
bool | operator<= (char lhs, const RWCString &rhs) |
|
bool | operator== (const RWCString &lhs, const RWCString &rhs) |
|
bool | operator== (const RWCString &lhs, const RWCSubString &rhs) |
|
bool | operator== (const RWCSubString &lhs, const RWCString &rhs) |
|
bool | operator== (const RWCString &lhs, const RWCConstSubString &rhs) |
|
bool | operator== (const RWCConstSubString &lhs, const RWCString &rhs) |
|
bool | operator== (const RWCString &lhs, const std::string &rhs) |
|
bool | operator== (const std::string &lhs, const RWCString &rhs) |
|
bool | operator== (const RWCString &lhs, const char *rhs) |
|
bool | operator== (const char *lhs, const RWCString &rhs) |
|
bool | operator== (const RWCString &lhs, char rhs) |
|
bool | operator== (char lhs, const RWCString &rhs) |
|
bool | operator> (const RWCString &lhs, const RWCString &rhs) |
|
bool | operator> (const RWCString &lhs, const RWCSubString &rhs) |
|
bool | operator> (const RWCSubString &lhs, const RWCString &rhs) |
|
bool | operator> (const RWCString &lhs, const RWCConstSubString &rhs) |
|
bool | operator> (const RWCConstSubString &lhs, const RWCString &rhs) |
|
bool | operator> (const RWCString &lhs, const std::string &rhs) |
|
bool | operator> (const std::string &lhs, const RWCString &rhs) |
|
bool | operator> (const RWCString &lhs, const char *rhs) |
|
bool | operator> (const char *lhs, const RWCString &rhs) |
|
bool | operator> (const RWCString &lhs, char rhs) |
|
bool | operator> (char lhs, const RWCString &rhs) |
|
bool | operator>= (const RWCString &lhs, const RWCString &rhs) |
|
bool | operator>= (const RWCString &lhs, const RWCSubString &rhs) |
|
bool | operator>= (const RWCSubString &lhs, const RWCString &rhs) |
|
bool | operator>= (const RWCString &lhs, const RWCConstSubString &rhs) |
|
bool | operator>= (const RWCConstSubString &lhs, const RWCString &rhs) |
|
bool | operator>= (const RWCString &lhs, const std::string &rhs) |
|
bool | operator>= (const std::string &lhs, const RWCString &rhs) |
|
bool | operator>= (const RWCString &lhs, const char *rhs) |
|
bool | operator>= (const char *lhs, const RWCString &rhs) |
|
bool | operator>= (const RWCString &lhs, char rhs) |
|
bool | operator>= (char lhs, const RWCString &rhs) |
|
RWFile & | operator>> (RWFile &file, RWCString &str) |
|
RWvistream & | operator>> (RWvistream &vis, RWCString &str) |
|
std::istream & | operator>> (std::istream &is, RWCString &str) |
|
RWCString | strXForm (const RWCString &str) |
|
RWCString | strXForm (const std::string &str) |
|
RWCString | toLower (const RWCString &str) |
|
RWCString | toUpper (const RWCString &str) |
|
Some databases require different handling of single byte character sets (SBCS), like US-ASCII or ISO Latin-1, and multibyte character sets (MBCS). Writing applications using class RWDBMBString for MBCS strings and class RWCString for SBCS strings allows the DB Interface Module to make the critical differentiation.
RWDBMBString derives publicly from RWCString, such that all the facilities and functions of RWCString are available. For a complete description of those functions, see the Essential Tools Module documentation for class RWCString.
We recommend that you do not derive from RWDBMBString.
- Synopsis
#include <rw/db/mbstring.h>
- Persistence
- Simple
- Example
#include <iostream.h>
#include <rw/db/mbstring.h>
void
ins << mbstring;
}
Oracle treats multibyte and single byte strings differently. If aDB
represents an Oracle database and the proper character set is loaded on the machine, the output is:
INSERT INTO T1 VALUES (N'<U+4E16><U+754C><U+60A8><U+597D>')
Sybase does not differentiate between multibyte and single byte strings. If aDB
represents a Sybase database and the proper character set is loaded on the machine, the output is:
INSERT INTO T1 VALUES ('<U+4E16><U+754C><U+60A8><U+597D>')