5 / 4 / 1
Регистрация: 05.04.2010
Сообщений: 260
1

Считывание текстового масива , русского

15.03.2013, 01:05. Показов 820. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Возможно вопрос баян и отправьте меня куда-то смотреть ответ, но я не нашёл как сделать это, мне надо считать в массив текст введённый в консоли на русском языке. вот к примеру обрывок

C++
1
2
3
int main () {
    char mass[999];
    cin>>mass;
Добавлено через 1 час 45 минут
Ну т.е что бы у меня в массив записались именно русские символы.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.03.2013, 01:05
Ответы с готовыми решениями:

Неверное считывание символов русского языка
Visual Studio 2013. При считывании русских символов всеми возможными средствами (cin, scanf, getch...

Считывание из текстового файла
Всем привет. У меня есть текстовый файл в котором, к примеру записана информация:"Фамилия Имя"....

Считывание текстового файла
Помогите, пожалуйста, разобраться. При считывании текстового файла, последние несколько символов...

Считывание текстового файла
Вот сам файл Я считываю символ в отдельное поле класса, потом 2 цифры после символа в отдельные 2...

15
47 / 46 / 18
Регистрация: 11.12.2011
Сообщений: 147
15.03.2013, 01:21 2
Здесь есть решение
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
15.03.2013, 01:38 3
C++
1
2
3
4
5
6
7
8
#include <windows.h>
 
int main()
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  ...
}
В свойствах консоли выбрать шрифт: Lucida Console

Добавлено через 6 минут
Настройка шрифта: Англо русский переводчик
0
5 / 4 / 1
Регистрация: 05.04.2010
Сообщений: 260
15.03.2013, 01:38  [ТС] 4
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
#include <windows.h>
 
int main()
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  ...
}
В свойствах консоли выбрать шрифт: Lucida Console
Нет не всё так просто, оно выведет потом текст то на русском, но до этого элементам массива присвоит свои всякие символы кривые
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
15.03.2013, 01:42 5
Пробовали?

Добавлено через 35 секунд
Вот это для ввода: SetConsoleCP(1251);
У меня, на ввод, такой способ нормально работает.

Добавлено через 2 минуты
Среда какая?
0
5 / 4 / 1
Регистрация: 05.04.2010
Сообщений: 260
15.03.2013, 02:26  [ТС] 6
Visual Studio, ну допустим я поменяю у себя шрифт в консоле , откомпилирую программу , если я её скину кому-то , у них на компьютере шрифт консоли сохранится?
0
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
15.03.2013, 02:31 7
Олексей, если они в свойствах консоли также поставят Lucida Console, то увидят то же, что и вы.

Не по теме:

Linux в помощь

0
5 / 4 / 1
Регистрация: 05.04.2010
Сообщений: 260
15.03.2013, 02:32  [ТС] 8
Ну тогда это не катит, это я и имел ввиду, она должна быть универсальна и красива, должен быть ещё способ
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
15.03.2013, 02:37 9
Тема такая. По умолчанию в консоли Windows кодировка 866, а в системе 1251. Из за этого проблемы при вводе с клавиатуры русского текста и при выводе русского текста из программы в консоль. Тот способ, который я предложил, устаналивает для консоли кодировку 1251. Теперь вопрос, что будет у того, у кого кодировка 866? То же, что было и у вас, до установки кодировки 1251.
0
5 / 4 / 1
Регистрация: 05.04.2010
Сообщений: 260
15.03.2013, 02:41  [ТС] 10
Я понимаю, но тогда надо русифицировать другим способом, возможно как -то используя коды букв? т.е я себе поставлю кодировку 750 русского языка , пусть записывает туда всякие кракозяблики и что бы они соответствовали кодам символов русских, хотел по кодам клавиш но понял что текст я буду вставлять в консоль
0
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
15.03.2013, 02:43 11
сейчас он (ТС) начнет рассказывать, про то, как было бы здорово брать значение с system("chcp") ...

Добавлено через 1 минуту
Олексей, русифицируйте Windows Абсолютно универсальных и достойных способов нет, есть лишь терпимые, самый нормальный вам уже предложили, все недовольства пишите в отчет к поставщикам ОС.
0
5 / 4 / 1
Регистрация: 05.04.2010
Сообщений: 260
15.03.2013, 14:27  [ТС] 12
Я читал что-то о setlocale оно не изменит ситуацию?
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
15.03.2013, 14:41 13
Цитата Сообщение от Олексей Посмотреть сообщение
Я читал что-то о setlocale оно не изменит ситуацию?
Нет. Только вывод.
0
5 / 4 / 1
Регистрация: 05.04.2010
Сообщений: 260
15.03.2013, 14:52  [ТС] 14
визуальный ввод, т.е он будет русский прост она экране, и в массив не запишет мне русскими?
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
15.03.2013, 14:55 15
Цитата Сообщение от Олексей Посмотреть сообщение
и в массив не запишет мне русскими?
Не запишет.
1
5 / 4 / 1
Регистрация: 05.04.2010
Сообщений: 260
15.03.2013, 14:56  [ТС] 16
Жаль, тогда всем спасибо, придётся юзать смену шрифта, лучше чем ничего
0
15.03.2013, 14:56
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.03.2013, 14:56
Помогаю со студенческими работами здесь

Считывание из текстового файла
Получил заданий от преподавателя: &quot;Сделать программу, желательно на C++, которая позволит считывать...

Считывание из текстового файла
Нужно модифицировать программу. Чтобы пользователь вводил текст НЕ в диалоговом окне, а текст был...

Считывание строки с текстового файла
Напишите пожалуйстанаброски как можно считать строку с текстового файла ,для дальнейшей работы с...

Считывание данных из текстового файла c++
Здравствуйте,у меня по мере изучения c++ появился вопрос. Каким образом можно устанавливать курсор...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru