18 #include "dtoolbase.h"
19 #include "unicodeLatinMap.h"
46 INLINE TextEncoder(
const TextEncoder ©);
48 INLINE
void set_encoding(Encoding encoding);
49 INLINE Encoding get_encoding()
const;
51 INLINE
static void set_default_encoding(Encoding encoding);
52 INLINE
static Encoding get_default_encoding();
54 INLINE
void set_text(
const string &text);
55 INLINE
void set_text(
const string &text, Encoding encoding);
56 INLINE
void clear_text();
57 INLINE
bool has_text()
const;
62 INLINE
string get_text()
const;
63 INLINE
string get_text(Encoding encoding)
const;
64 INLINE
void append_text(
const string &text);
65 INLINE
void append_unicode_char(
int character);
66 INLINE
int get_num_chars()
const;
67 INLINE
int get_unicode_char(
int index)
const;
68 INLINE
void set_unicode_char(
int index,
int character);
69 INLINE
string get_encoded_char(
int index)
const;
70 INLINE
string get_encoded_char(
int index, Encoding encoding)
const;
71 INLINE
string get_text_as_ascii()
const;
73 INLINE
static string reencode_text(
const string &text, Encoding from, Encoding to);
75 INLINE
static bool unicode_isalpha(
int character);
76 INLINE
static bool unicode_isdigit(
int character);
77 INLINE
static bool unicode_ispunct(
int character);
78 INLINE
static bool unicode_islower(
int character);
79 INLINE
static bool unicode_isupper(
int character);
80 INLINE
static bool unicode_isspace(
int character);
81 INLINE
static int unicode_toupper(
int character);
82 INLINE
static int unicode_tolower(
int character);
84 INLINE
static string upper(
const string &source);
85 INLINE
static string upper(
const string &source, Encoding encoding);
86 INLINE
static string lower(
const string &source);
87 INLINE
static string lower(
const string &source, Encoding encoding);
91 INLINE
void set_wtext(
const wstring &wtext);
92 INLINE
const wstring &get_wtext()
const;
93 INLINE
void append_wtext(
const wstring &text);
94 wstring get_wtext_as_ascii()
const;
95 bool is_wtext()
const;
97 static string encode_wchar(
wchar_t ch, Encoding encoding);
98 INLINE
string encode_wtext(
const wstring &wtext)
const;
99 static string encode_wtext(
const wstring &wtext, Encoding encoding);
100 INLINE wstring decode_text(
const string &text)
const;
101 static wstring decode_text(
const string &text, Encoding encoding);
106 F_got_wtext = 0x0002,
115 static Encoding _default_encoding;
118 EXPCL_DTOOL ostream &
119 operator << (ostream &out, TextEncoder::Encoding encoding);
120 EXPCL_DTOOL istream &
121 operator >> (istream &in, TextEncoder::Encoding &encoding);
129 INLINE EXPCL_DTOOL ostream &
130 operator << (ostream &out,
const wstring &str);
132 #include "textEncoder.I"
This class can be used to convert text between multiple representations, e.g.
The base class to a family of classes that decode various kinds of encoded byte streams.