|
| static constexpr size_t | U16ToMU8Length (const std::basic_string_view< U16T > &u16String) |
| | 精确计算UTF-16转换到M-UTF-8所需的M-UTF-8字符串的长度
|
| static constexpr size_t | U16ToMU8Length (const U16T *u16String, size_t szStringLength) |
| | 精确计算UTF-16转换到M-UTF-8所需的M-UTF-8字符串的长度
|
| static std::basic_string< MU8T > | U16ToMU8 (const std::basic_string_view< U16T > &u16String, size_t szReserve=0) |
| | 获取UTF-16转换到M-UTF-8的字符串
|
| static std::basic_string< MU8T > | U16ToMU8 (const U16T *u16String, size_t szStringLength, size_t szReserve=0) |
| | 获取UTF-16转换到M-UTF-8的字符串
|
template<MUTF8_Tool_Internal::StringLiteral u16String>
requires std::is_same_v<typename decltype(u16String)::value_type, U16T> |
| static consteval std::basic_string_view< MU8T > | U16ToMU8 (void) |
| | 通过UTF-16字符串字面量,直接获得编译期的M-UTF-8静态字符串
|
| static constexpr size_t | U8ToMU8Length (const std::basic_string_view< U8T > &u8String) |
| | 精确计算UTF-8转换到M-UTF-8所需的M-UTF-8字符串的长度
|
| static constexpr size_t | U8ToMU8Length (const U8T *u8String, size_t szStringLength) |
| | 精确计算UTF-8转换到M-UTF-8所需的M-UTF-8字符串的长度
|
| static std::basic_string< MU8T > | U8ToMU8 (const std::basic_string_view< U8T > &u8String, size_t szReserve=0) |
| | 获取UTF-8转换到M-UTF-8的字符串
|
| static std::basic_string< MU8T > | U8ToMU8 (const U8T *u8String, size_t szStringLength, size_t szReserve=0) |
| | 获取UTF-8转换到M-UTF-8的字符串
|
template<MUTF8_Tool_Internal::StringLiteral u8String>
requires std::is_same_v<typename decltype(u8String)::value_type, U8T> |
| static consteval std::basic_string_view< MU8T > | U8ToMU8 (void) |
| | 通过UTF-8字符串字面量,直接获得编译期的M-UTF-8静态字符串
|
| static constexpr size_t | MU8ToU16Length (const std::basic_string_view< MU8T > &mu8String) |
| | 精确计算M-UTF-8转换到UTF-16所需的UTF-16字符串的长度
|
| static constexpr size_t | MU8ToU16Length (const MU8T *mu8String, size_t szStringLength) |
| | 精确计算M-UTF-8转换到UTF-16所需的UTF-16字符串的长度
|
| static std::basic_string< U16T > | MU8ToU16 (const std::basic_string_view< MU8T > &mu8String, size_t szReserve=0) |
| | 获取M-UTF-8转换到UTF-16的字符串
|
| static std::basic_string< U16T > | MU8ToU16 (const MU8T *mu8String, size_t szStringLength, size_t szReserve=0) |
| | 获取M-UTF-8转换到UTF-16的字符串
|
| static constexpr size_t | MU8ToU8Length (const std::basic_string_view< MU8T > &mu8String) |
| | 精确计算M-UTF-8转换到UTF-8所需的UTF-8字符串的长度
|
| static constexpr size_t | MU8ToU8Length (const MU8T *mu8String, size_t szStringLength) |
| | 精确计算M-UTF-8转换到UTF-8所需的UTF-8字符串的长度
|
| static std::basic_string< U8T > | MU8ToU8 (const std::basic_string_view< MU8T > &mu8String, size_t szReserve=0) |
| | 获取M-UTF-8转换到UTF-8的字符串
|
| static std::basic_string< U8T > | MU8ToU8 (const MU8T *mu8String, size_t szStringLength, size_t szReserve=0) |
| | 获取M-UTF-8转换到UTF-8的字符串
|
template<typename MU8T = uint8_t, typename U16T = char16_t, typename U8T = char8_t>
class MUTF8_Tool< MU8T, U16T, U8T >
用于处理Java的Modified-UTF-8(以下简称M-UTF-8)字符串与UTF-8或UTF-16的静态或动态转换
- 模板参数
-
| MU8T | M-UTF-8对应的字符类型,简写为MU8 |
| U16T | UTF-16对应的字符类型 |
| U8T | UTF-8对应的字符类型 |
- 注解
- 类仅提供M-UTF-8的静态生成方式,因为UTF-8或UTF-16可以由编译器支持,而M-UTF-8不存在支持