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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.58
M@k7
 Аватар для M@k7
6 / 6 / 0
Регистрация: 17.10.2011
Сообщений: 165
#1

Как в файл вывести русский текст? - C++

30.10.2012, 01:51. Просмотров 1473. Ответов 7
Метки нет (Все метки)

Когда русский текст вывожу в файл выводит какую то какафонию
как это исправить
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.10.2012, 01:51     Как в файл вывести русский текст?
Посмотрите здесь:

C++ Как с консоли записать в файл русский текст
C++ Русский текст
C++ пдскажите функцию которая выводит русский текст на экран и его заголовочный файл с++ но не system ( " echo текст " );
Как заставить VC++ воспринимать русский текст на форме? C++
C++ Как выводить русский текст?
Вывести русский текст C++
Вывести в консоль русский текст C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
30.10.2012, 02:02     Как в файл вывести русский текст? #2
Кому-то это помогает:
C++
1
2
3
4
5
6
7
#include <windows.h>
...
int main()
{
   SetConsoleCP(1251);
   SetConsoleOutputCP(1251);
...
M@k7
 Аватар для M@k7
6 / 6 / 0
Регистрация: 17.10.2011
Сообщений: 165
30.10.2012, 02:07  [ТС]     Как в файл вывести русский текст? #3
Но тогда setlocale(LC_ALL, "Russian"); не работает ((
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
30.10.2012, 02:27     Как в файл вывести русский текст? #4
В свойствах консоли выберите шрифт: Lucida Console.
panicwassano
591 / 559 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
30.10.2012, 08:28     Как в файл вывести русский текст? #5
Цитата Сообщение от M@k7 Посмотреть сообщение
Но тогда setlocale(LC_ALL, "Russian"); не работает ((
шрифт консоли смените
Kastaneda
Форумчанин
Эксперт С++
 Аватар для Kastaneda
4252 / 2784 / 219
Регистрация: 12.12.2009
Сообщений: 7,109
Записей в блоге: 1
Завершенные тесты: 1
30.10.2012, 09:27     Как в файл вывести русский текст? #6
Цитата Сообщение от alsav22 Посмотреть сообщение
В свойствах консоли выберите шрифт: Lucida Console.
Цитата Сообщение от panicwassano Посмотреть сообщение
шрифт консоли смените
При чем здесь шрифт консоли?
ТС'у надо
Цитата Сообщение от M@k7 Посмотреть сообщение
в файл
Нужно сравнить кодировки редактора, в котором код набираешь, и редактора, в котором файл смотришь. Должны совпадать.
alsav22
5410 / 4806 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
30.10.2012, 16:56     Как в файл вывести русский текст? #7
Цитата Сообщение от Kastaneda Посмотреть сообщение
При чем здесь шрифт консоли?
Я так поял, что если сделать, как написал во 2 посте, то с файлом нормально становится, но

Цитата Сообщение от M@k7 Посмотреть сообщение
Но тогда setlocale(LC_ALL, "Russian"); не работает ((
Что это значит? На консоль русский текст не выводится?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.10.2012, 18:10     Как в файл вывести русский текст?
Еще ссылки по теме:

C++ Как передать в функцию русский текст
C++ Как заменить русский текст в файле?
Как записать русский текст в файл? C++
C++ Вывести в консоль и псевдографику и русский текст вместе
C++ Как научить IDE Cbuilder 6 понимать русский текст (массив строк с кириллицей преобразуется в знаки вопроса)?

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

Или воспользуйтесь поиском по форуму:
Kastaneda
Форумчанин
Эксперт С++
 Аватар для Kastaneda
4252 / 2784 / 219
Регистрация: 12.12.2009
Сообщений: 7,109
Записей в блоге: 1
Завершенные тесты: 1
30.10.2012, 18:10     Как в файл вывести русский текст? #8
Цитата Сообщение от alsav22 Посмотреть сообщение
Я так поял, что если сделать, как написал во 2 посте, то с файлом нормально становится
Смотрим второй пост
C++
1
2
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
Set - установить, Console - консоль, CP - code page (кодовая страница), т.е. функция устанавливает кодовую страницу консоли, при чем здесь файлы?

Добавлено через 5 минут

Не по теме:

Как под Linux'ом все просто

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
:~$ cat > tmp.cpp
#include <fstream>
 
int main()
{
    std::ofstream of("text");
    of << "Русский текст" << std::endl;
}
:~$ g++ tmp.cpp
:~$ ./a.out 
:~$ cat text
Русский текст
:~$

Yandex
Объявления
30.10.2012, 18:10     Как в файл вывести русский текст?
Ответ Создать тему
Опции темы

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