cpp中std::string和std::wstring 相互转换

#include <iostream>
#include <string>
#include <locale>
#include <codecvt>
std::wstring s2ws(const std::string& str)
{
	using convert_typeX = std::codecvt_utf8<wchar_t>;
	std::wstring_convert<convert_typeX, wchar_t> converterX;

	return converterX.from_bytes(str);
}

std::string ws2s(const std::wstring& wstr)
{
	using convert_typeX = std::codecvt_utf8<wchar_t>;
	std::wstring_convert<convert_typeX, wchar_t> converterX;

	return converterX.to_bytes(wstr);
}

输出时要设置一下编码

	setlocale(LC_ALL, "");
posted @ 2021-05-23 13:51  马肯尼煤牙巴骨  阅读(449)  评论(0)    收藏  举报