Когда я вставить строку с акцентами, он не отображается в файле «FAKE.txt» (UTF-16 кодирования)широкие строки с акцентами не выводимый
std::wifstream ifFake("FAKE.txt", std::ios::binary);
ifFake.imbue(std::locale(ifFake.getloc(),
new std::codecvt_utf16<wchar_t, 0x10ffff, std::consume_header>));
if (!ifFake)
{
std::wofstream ofFake("FAKE.txt", std::ios::binary);
ofFake << L"toc" << std::endl;
ofFake << L"salut" << std::endl;
ofFake << L"autre" << std::endl;
ofFake << L"êtres" << std::endl;
ofFake << L"âpres" << std::endl;
ofFake << L"bêtes" << std::endl;
}
Результат (FAKE.txt) TOC Salut Autre
остальные ударением слова не написано (ошибка потока я думаю).
Программа была скомпилирована с g ++, а кодировка исходного файла - UTF-8.
Я заметил такое же поведение с выходом консоли.
Как это исправить?
Спасибо! Вы правы в g ++. Я попробую ваше второе решение. – Aminos