我需要将utf16文本转换为utf8。实际的转换代码很简单:努力将矢量<char>转换为wstring
std::wstring in(...);
std::string out = boost::locale::conv::utf_to_utf<char, wchar_t>(in);
但问题是UTF16是从文件中读取的,它可能包含或不包含BOM。我的代码需要可移植(最低限度是windows/osx/linux)。我真的很想弄清楚如何从字节序列创建一个wstring
。
编辑:这不是一个链接问题的重复,因为在那个问题OP需要将宽字符串转换为字节数组 - 我需要转换其他方式。
我不确定,会[此帖](https://stackoverflow.com/questions/2573834/c-convert-string-or-char-to-wstring-or-wchar-t)有帮助吗? – gongzhitaao
如何将'vector'转换为'wstring'? –
SirDarius
@SirDarius嗯,这正是我的问题:如何从'vector'获取'wstring'? –