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

Проблемы с кодировкой при сравнении строк - C++

Восстановить пароль Регистрация
 
Venzo
 Аватар для Venzo
125 / 123 / 4
Регистрация: 03.07.2011
Сообщений: 354
31.01.2012, 00:22     Проблемы с кодировкой при сравнении строк #1
Здравствуйте! Мне, нужно сравнить две строки: одну получаю get запросом(на сайте кодировка windows 1251), а вторая указывается непосредственно в коде. Но из-за кодировок, они не равны.
Если вывести в консоль обе, первая явно короче(у меня иероглифы, и не вижу что там написано), если в файл, то одно и тоже. Длина строк так же различна.
Какие есть пути решения проблемы?
Скрин консоли:
Название: zUL8e3Gv.png
Просмотров: 162

Размер: 730 байт
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Venzo
 Аватар для Venzo
125 / 123 / 4
Регистрация: 03.07.2011
Сообщений: 354
31.01.2012, 00:53  [ТС]     Проблемы с кодировкой при сравнении строк #2
Открыл в notapad'e, преобразовал в ANSI. Проблема вроде решилась.
alex_x_x
бжни
 Аватар для alex_x_x
2441 / 1646 / 84
Регистрация: 14.05.2009
Сообщений: 7,163
31.01.2012, 01:19     Проблемы с кодировкой при сравнении строк #3
ZoRT, если вы используете однобайтовые символы (char), то кодировка строк (заданных как константные в файле) будет совпадать с кодировкой файла
на самом деле с двухбайтовыми символами также
Venzo
 Аватар для Venzo
125 / 123 / 4
Регистрация: 03.07.2011
Сообщений: 354
13.02.2012, 17:13  [ТС]     Проблемы с кодировкой при сравнении строк #4
Проблема снова появилась. Теперь нужно сравнить строку в utf-8 со строкой ansi(cp1251)
Используя класс string.
Я так понимаю нужно преобразовать из ansi в utf-8, или наоборот, вот только как,понять не могу.
Есть ли стандартная функция, или нужно использовать стороннюю библиотеку? Если нет, то какую библиотеку посоветуете?
-=ЮрА=-
Заблокирован
Автор FAQ
13.02.2012, 17:15     Проблемы с кодировкой при сравнении строк #5
Цитата Сообщение от ZoRT Посмотреть сообщение
Проблема снова появилась. Теперь нужно сравнить строку в utf-8 со строкой ansi(cp1251)
Используя класс string.
Я так понимаю нужно преобразовать из ansi в utf-8, или наоборот, вот только как,понять не могу.
Есть ли стандартная функция, или нужно использовать стороннюю библиотеку? Если нет, то какую библиотеку посоветуете?
- см сюда
Создание файла в UTF-8 кодировке
Yandex
Объявления
13.02.2012, 17:15     Проблемы с кодировкой при сравнении строк
Ответ Создать тему
Опции темы

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