参考 编码转换和字符转义 - Sc-Softs/CornerstoneSDK GitHub Wiki

UTF8ToWideChar

  • 将 UTF8 编码的字符串转换为宽字符串
std::wstring UTF8ToWideChar(const std::string &utf8);
参数
utf8 待转换编码的 UTF8 编码的字符串
返回值
转换后的宽字符串

WideCharToUTF8

  • 将宽字符串转换为 UTF8 编码的字符串
std::string WideCharToUTF8(const std::wstring &wstr);
参数
wstr 待转换编码的宽字符串
返回值
转换后的 UTF8 编码的字符串

ANSIToWideChar

  • 将 ANSI 编码的字符串转换为宽字符串
std::wstring ANSIToWideChar(const std::string &ansi);
参数
ansi 待转换编码的 ANSI 编码的字符串
返回值
转换后的宽字符串

WideCharToANSI

  • 将宽字符串转换为 ANSI 编码的字符串
std::string WideCharToANSI(const std::wstring &wstr);
参数
wstr 待转换编码的宽字符串
返回值
转换后的 ANSI 编码的字符串

ANSIWithUCS2ToWideChar

  • 将 ANSI 编码混杂 UCS2 编码的字符串转换为宽字符串
std::wstring ANSIWithUCS2ToWideChar(const std::string &ansi_with_ucs2, const std::wstring &not_unescape_wide_chars = L"[\\]");
参数
ansi_with_ucs2 待转换编码的 ANSI 编码混杂 UCS2 编码的字符串
not_unescape_wide_chars 不进行反转义的宽字符集
返回值
转换后的宽字符串

WideCharToANSIWithUCS2

  • 将宽字符串转换为 ANSI 编码混杂 UCS2 编码的字符串
std::string WideCharToANSIWithUCS2(const std::wstring &wstr, const std::wstring &force_escape_wide_chars = L"");
参数
wstr 待转换编码的宽字符串
force_escape_wchars 要强制转义的宽字符集
返回值
转换后的 ANSI 编码混杂 UCS2 编码的字符串

EscapeWideChar

  • 转义宽字符串
std::wstring EscapeWideChar(const std::wstring &wstr, const std::wstring &escape_wide_chars = L"[\\]");
参数
wstr 包含待转义的宽字符的宽字符串
escape_wchars 待转义的宽字符集
返回值
转义后的宽字符串

UnescapeWideChar

  • 反转义宽字符串
std::wstring UnescapeWideChar(const std::wstring &wstr_with_ucs2, const std::wstring &not_unescape_wide_chars = L"");
参数
wstr 待反转义的宽字符串
not_unescape_wide_chars 不进行反转义的宽字符集
返回值
反转义后的宽字符串

EscapeUTF8

  • 转义 UTF8 编码的字符串
std::string EscapeUTF8(const std::string &utf8, const std::string &escape_utf8_chars = "[\\]");
参数
wstr 包含待转义的 UTF8 编码的字符串
escape_wchars 待转义的 UTF8 编码的字符集
返回值
转义后的 UTF8 编码的字符串

UnescapeUTF8

  • 反转义 UTF8 编码的字符串
std::string UnescapeUTF8(const std::string &utf8_with_ucs2, const std::string &not_unescape_utf8_chars = "");
参数
wstr 待反转义的 UTF8 编码的字符串
not_unescape_utf8_chars 不进行反转义的 UTF8 编码的字符集
返回值
反转义后的 UTF8 编码的字符串