在C++中,可以使用以下函数来将UTF-8编码转换为Unicode:
#include <iostream>
#include <string>
#include <codecvt>
std::wstring utf8_to_unicode(const std::string& utf8_str) {
std::wstring_convert<std::codecvt_utf8<wchar_t>> converter;
return converter.from_bytes(utf8_str);
}
int main() {
std::string utf8_str = u8"你好";
std::wstring unicode_str = utf8_to_unicode(utf8_str);
for (auto c : unicode_str) {
std::wcout << std::hex << static_cast<int>(c) << std::endl;
}
return 0;
}
在这个例子中,首先定义了一个函数utf8_to_unicode
来将UTF-8编码的字符串转换为Unicode编码的宽字符串。然后在main
函数中调用这个函数并输出转换后的Unicode编码。