Boost.Locale под Windows
От: sunheretic13  
Дата: 22.08.12 06:45
Оценка:
Имеется программа

#include <conio.h>
#include <iostream>
#include <boost/locale.hpp>

using namespace boost::locale;
using namespace std;


int wmain()
{
    generator gen;

    locale loc=gen("ru_RU.UTF-8");

    wcout.imbue(loc);

    wcout<<L"Русский текст"<<endl;

    _getch();

    return 0;
}





Программа должна корректно выводить текст в консоли Windows в кодировке UTF-8.
Понятное дело что просто так она это не выводит.
Ставлю для cmd.exe шрифт Lucinda Console.
Ставлю кодировку — chcp 65001 (кодировка UTF-8).

Запускаю в полученной среде программу.
На экране либо пустота либо квадраты (Windows XP/7).
Делаю операцию


Test.exe >1.txt

type 1.txt



На экране:


Русский текст.




Что за нафиг? Как это лечить? Я хочу чтобы в самой программе вывод был нормальный.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.