string16转为std::string
时间: 2023-12-03 11:39:48 浏览: 81
C++ 模板写的短小字符串类,用于替换字符数组和std::string
5星 · 资源好评率100%
可以使用以下代码将string16转换为std::string:
```cpp
#include <string>
#include <locale>
#include <codecvt>
std::string string16_to_string(const std::wstring& strString16)
{
std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> converter;
return converter.to_bytes(strString16);
}
```
其中,std::wstring_convert是一个转换器类,它可以将不同编码的字符串进行转换。在这里,我们使用std::codecvt_utf8_utf16<wchar_t>来指定从UTF-16编码的字符串转换为UTF-8编码的字符串。然后,我们将string16作为参数传递给to_bytes函数,该函数将返回一个std::string类型的字符串。
阅读全文