例如我有这个字符串:
std::wstring s = L"123";
s.push_back(0x202e);
s.append(L"abc");
这0x202e
是 UTF-16 标记 RLO(从右到左覆盖)。因此,打印后的字符串看起来:cba123
. 我想问是否有任何函数可以将第一个字符串转换为打印的字符串。
如果该功能也可以处理所有类型的 UTF-16 BOM,那就太好了。
有什么标准的方法吗?我正在使用 C++ 进行编码,并且可以自由使用 boost 或其他一些免费库。