Здравствуйте, flax, Вы писали:
F>пытаюсь выполнить F>cout<<"русский текст";
F>проект Win32 -console alication.
F>выводит текст в DOS кодировке.
F>что сделать (как изменить свойство потока)
F>cпасибо
Используй объект wcout:
#include <iostream>
using namespace std;
int main()
{
wcout.imbue(locale(".866"));
wcout << L"русский текст";
return EXIT_SUCCESS;
}
С уважением,
Olegator
... << RSDN@Home 1.1.3 beta 1 >>
cout<<"русский текст" в консоль. Проблема с кодировкой
Здравствуйте, flax, Вы писали:
F>пытаюсь выполнить F>cout<<"русский текст";
F>проект Win32 -console alication.
F>выводит текст в DOS кодировке.
F>что сделать (как изменить свойство потока)
Простейший способ — использовать функцию WinAPI CharToOem — найдешь в helpe
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: cout<<"русский текст" в консоль. Проблема с кодировкой
Здравствуйте, flax, Вы писали:
F>пытаюсь выполнить F>cout<<"русский текст";
F>проект Win32 -console alication.
F>выводит текст в DOS кодировке.
F>что сделать (как изменить свойство потока)
тебе нужно изменить настройки консоли —
смотри ф-ции: GetConsoleCP, SetConsoleOutputCP и GetConsoleOutputCP.
думаю по названию понятно.
F>cпасибо
Best regards,
Oleg A. Bachin
Re[2]: cout<<"русский текст" в консоль. Проблема с кодировк
SET LUCIDA CONSOLE 2 CONSOLE
+
#include <stdio.h>
#include <windows.h>
#pragma setlocale("rus_rus.1251") //Текст программы написан, используя кодировку 1251
main()
{
UINT uCP = GetConsoleOutputCP();
printf("Current CP is %d\n", uCP);
SetConsoleOutputCP(1251); //Выставляем русскую кодовую страницу для консоли
uCP = GetConsoleOutputCP();
printf("Current CP is %d\n", uCP);
printf("Привет \n"); //Русский текст должен быть написан в кодировке 1251
}