我使用 VS 2012 编写了这段代码:
std::wofstream logout("my_log.txt", std::ios_base::out | std::ios_base::trunc);
std::locale utf8_locale(locale(), new codecvt_utf8<wchar_t>);
logout.imbue(utf8_locale);
if (!logout.is_open())
{
printf("Cannot open file.\n");
return 1;
}
else printf("Log file created.\n");
logout << "Client IP │"<< "Recv time │"<< "Request │"<< "Response "<<endl;
logout << "─────────────────────┼"<< "─────────────────────────┼"<<endl;
在 my_log.txt 文件中,所有 unicode 符号都替换为“?????”。我想创建类似日志文件表的东西。如果我使用像“---”这样的标准 ASCII 符号,它会起作用,并且它们都会直接显示。我试图改变全球语言环境,但我没有成功。