Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
thick_int
Заблокирован
#1

Снова о локализации - C++

02.05.2012, 21:33. Просмотров 408. Ответов 5
Метки нет (Все метки)

Ранее было много рецептов относитьельно локализации консоли.
Выведя, одну строку в поток на русском можно было, но после этого ввод в cin с последующим вводом в cout косячил. (Причем неважно какие потоки использовались, обычные или широкие).

Мне, как то неожиданно удалось решить эту проблему, но опять же, скорее везение.
Вот хотелось бы, чтобы опытные люди объяснили, почему данная программа работает совершенно корректно с точки зрения руссифицированного вывода на консоль:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdafx.h"
#include <iostream>
#include <string>
#include <locale>
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    locale::global(locale(""));
    wcin.imbue(locale(".OCP"));
    wcout.imbue(locale());
 
    wcout << L"Привет мир!" << endl;
    wstring a;
    wcout << "Введите слово на русском языке: ";
    wcin >> a;
    wcout << a << endl;
 
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2012, 21:33
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Снова о локализации (C++):

Как сделать чтобы таймер дойдя до 0 стартовал снова и снова? - C++
Здравствуйте :) Как сделать чтобы таймер дойдя до 0 стартовал снова и снова? TimerSec = 59; TimerMin = 6; for(int i = TimerSec;...

Ошибка русской локализации? - C++
Функция strtod и русская локализация Так, решил я значит проверить работу функции strtod и запустил такой пример(vs15) Оппс,...

Статьи по локализации программ. - C++
Подскажыте, пожалуйста, ссылку на хорошую статью по локализации программы.

Где хронятся именнованые локализации - C++
Привет!!! Есть задачка: &quot;Попробуйте выяснить, где в вашей системе хранятся именованные локализации. Если вы имеете доступ к той части...

Вывод даты в русской локализации (Linux) - C++
#include &lt;stdio.h&gt; #include &lt;time.h&gt; int main () { setlocale (LC_TYPE, &quot;ru_RU&quot;); time_t rawtime; struct tm * timeinfo;...

и снова С++ - C++
помогите записать програмку которая сможет написать минимальное количество простых присваиваний, содержащих по одному умножению (без...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
eYroN
0 / 0 / 0
Регистрация: 02.05.2012
Сообщений: 4
02.05.2012, 21:40 #2
Русский ввод и русский вывод

Читай мой комментарий
0
thick_int
Заблокирован
02.05.2012, 21:49  [ТС] #3
Вот Вы пишите: После создания проекта в MVS, сохраните его в Кириллица (DOS) - кодовая страница 866 и никаких setlocale и др. не нужно.

Объясните поподробнее, что значит сохранить в Кирилице. Точнее как это делается.
0
eYroN
0 / 0 / 0
Регистрация: 02.05.2012
Сообщений: 4
02.05.2012, 22:01 #4
"Файл"--"Сохранить как"---нажать на треугольничек рядом с "Сохранить" ---"Сохранить с кодировкой..."
0
thick_int
Заблокирован
02.05.2012, 22:11  [ТС] #5
Отличный метод. Работает, как ни удивительно.
Но все же хотелось узнать, каким способом достигается безупречная работа консольного метода WriteLine. Вряд ли серьезный софт пишется с использованием таких хаков.
Кстати, что бы Вы делали, если бы Вам нужно было бы также лихо воспользоваться, например, немецкой локализацией.
0
eYroN
0 / 0 / 0
Регистрация: 02.05.2012
Сообщений: 4
02.05.2012, 22:22 #6
Ну... дальше я нуль уж извините
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.05.2012, 22:22
Привет! Вот еще темы с ответами:

Снова конструктор - C++
в книге написан пример NoD(std::istream &amp;is) { is &gt;&gt; *this; } а по заданию надо его еще сделать по умолчанию std::cin при...

и снова графика в C++ - C++
Постройте график функции y = 3x2 -7 на интервале . Обозначьте оси координат, нарисуйте координатную сетку, укажите цены делений и пределы...

и снова змейка - C++
у меня огромная просьба,задали на выходные написать змейку на С++ в Visual Sudio 2010, но очень много ограничений в плане библиотек,поэтому...

И снова потоки - C++
И опять работа с потоками...Как она меня напрягает последнее время) Но нужно научиться, нужно сделать то, что я задумал. Думаю вы поможете...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
02.05.2012, 22:22
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru