43 out += (char) (0xC0 + ((code >> 6) & 0x1f));
44 out += (char) (0x80 + (code & 0x3f));
49 out += (char) (0xE0 + ((code >> 12) & 0x1f));
50 out += (char) (0x80 + ((code >> 6) & 0x3f));
51 out += (char) (0x80 + (code & 0x3f));
56 out += (char) (0xF0 + ((code >> 18) & 0x1f));
57 out += (char) (0x80 + ((code >> 12) & 0x3f));
58 out += (char) (0x80 + ((code >> 6) & 0x3f));
59 out += (char) (0x80 + (code & 0x3f));
64 out += (char) (0xF8 + ((code >> 24) & 0x1f));
65 out += (char) (0x80 + ((code >> 18) & 0x3f));
66 out += (char) (0x80 + ((code >> 12) & 0x3f));
67 out += (char) (0x80 + ((code >> 6) & 0x3f));
68 out += (char) (0x80 + (code & 0x3f));
71 out += (char) (0xFC + ((code >> 30) & 0x1f));
72 out += (char) (0x80 + ((code >> 24) & 0x3f));
73 out += (char) (0x80 + ((code >> 18) & 0x3f));
74 out += (char) (0x80 + ((code >> 12) & 0x3f));
75 out += (char) (0x80 + ((code >> 6) & 0x3f));
76 out += (char) (0x80 + (code & 0x3f));
90 out += (char16_t) code;
93 char32_t ch = code - 0x010000;
94 char32_t cl = ch & 0x03FF;
144 if ((c & 0xC0) != 0x80)
165 if (c < 0xD800 || c >= 0xE000)
180 if (c < 0xDC00 || c >= 0xE000)
293 for (char16_t c : str)
std::u16string codeToUTF16(char32_t code)
std::string codeToUTF8(char32_t code)
UTFCodeParser(const UTFCodeParser &orig)
std::u16string utf8to16(std::string &str)
std::u16string getUTF16()
std::u32string getUTF32()
std::string utf16to8(std::u16string &str)