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

Русские символы в массиве char - C++

Восстановить пароль Регистрация
 
kirsanv43
16 / 3 / 1
Регистрация: 05.11.2013
Сообщений: 49
05.11.2013, 01:25     Русские символы в массиве char #1
имеется функция возвращающая массив байтов(символов), если данная строка английское слово то все нормально, иначе получается это:С„1Рё2СЃ3РІ4

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

C++ Русские символы!!!!
Русские символы C++
C++ UTF-8 - русские символы в char посимвольно
C++ Русские символы из ASCII
cin>> считать русские буквы в массив char C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Trademaster
 Аватар для Trademaster
3 / 3 / 0
Регистрация: 08.10.2013
Сообщений: 21
05.11.2013, 01:36     Русские символы в массиве char #2
Поменять кодировку ,не помню как это точно делается ,погуглите ,там на самом деле все одной строкой обойдётся.
kirsanv43
16 / 3 / 1
Регистрация: 05.11.2013
Сообщений: 49
05.11.2013, 01:51  [ТС]     Русские символы в массиве char #3
OemToAnsi - но это не помогает, выдает ____________
AnsiToOem,CharToOem - тоже ни какого результата.
Хулиган
 Аватар для Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
05.11.2013, 01:55     Русские символы в массиве char #4
Русские шрифты в консоли
kirsanv43
16 / 3 / 1
Регистрация: 05.11.2013
Сообщений: 49
05.11.2013, 01:56  [ТС]     Русские символы в массиве char #5
Данные я эти получаю посредством вызова CryptUnprotectData
Trademaster
 Аватар для Trademaster
3 / 3 / 0
Регистрация: 08.10.2013
Сообщений: 21
05.11.2013, 01:57     Русские символы в массиве char #6
Русские шрифты в консоли
Вот тут обсуждалось
Ukrainis
2 / 2 / 0
Регистрация: 26.10.2013
Сообщений: 40
05.11.2013, 02:05     Русские символы в массиве char #7
C++
1
2
3
int main()
{
    setlocale(LC_ALL, "rus");
Третья сверху строчка, и у меня такой проблемы больше нету.
kirsanv43
16 / 3 / 1
Регистрация: 05.11.2013
Сообщений: 49
05.11.2013, 02:18  [ТС]     Русские символы в массиве char #8
Как включать русские символы в консоле я знаю, мне нужно не выводить, а записать в файл, но выводить тоже пробовал, результат нулевой.
Хулиган
 Аватар для Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
05.11.2013, 02:32     Русские символы в массиве char #9
используйте :
C++
1
2
3
4
#include <windows.h>
 
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
и в консоли поменяйте шрифт на Lucida
ValeryS
Модератор
6376 / 4842 / 443
Регистрация: 14.02.2011
Сообщений: 16,045
05.11.2013, 02:34     Русские символы в массиве char #10
Цитата Сообщение от kirsanv43 Посмотреть сообщение
имеется функция возвращающая массив байтов(символов), если данная строка английское слово то все нормально, иначе получается это:С„1Рё2СЃ3РІ4
Как привести русские символы к нормальному представлению?
А кодировка то у тебя какая?
kirsanv43
16 / 3 / 1
Регистрация: 05.11.2013
Сообщений: 49
05.11.2013, 02:56  [ТС]     Русские символы в массиве char #11
ValeryS, кодировка стандартная, функция не самописная, а http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx .
только что попробовал данную последовательность байтов перевести в строку в Unicod кодировке на C#, все корректно.
kirsanv43
16 / 3 / 1
Регистрация: 05.11.2013
Сообщений: 49
08.11.2013, 19:13  [ТС]     Русские символы в массиве char #12
Решение нашлось :
MultiByteToWideChar(
CP_UTF8
.......
);
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.11.2013, 20:51     Русские символы в массиве char
Еще ссылки по теме:

Русские символы и substr C++
Русские символы C++
C++ Пропадают русские символи при конвертации из wchar_t to char

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

Или воспользуйтесь поиском по форуму:
Хулиган
 Аватар для Хулиган
85 / 80 / 12
Регистрация: 08.08.2012
Сообщений: 737
08.11.2013, 20:51     Русские символы в массиве char #13
Цитата Сообщение от kirsanv43 Посмотреть сообщение
Решение нашлось :
решение было в ответах, но другое
Yandex
Объявления
08.11.2013, 20:51     Русские символы в массиве char
Ответ Создать тему
Опции темы

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