无法在多个代码页中打印Unicode字符串,并保持“cout”工作。请帮助我使这些3行代码一同工作。
std::wcout<<"abc "<<L'\u240d'<<" defg "<<L'א'<<" hijk"<<std::endl;
std::cout<<"hello world from cout! \n";
std::wcout<<"hello world from wcout! \n";
输出:
abc hello world from cout!
我尝试过:
#include <io.h>
#include <fcntl.h>
_setmode(_fileno(stdout), _O_U8TEXT);
问题:
"wcout"失败了。
尝试:
std::locale mylocale("");
std::wcout.imbue(mylocale);
并且:
SetConsoleOutputCP(1251);
并且
setlocale(LC_ALL, "");
并且
SetConsoleCP(CP_UTF8)
什么都没有起作用。