Название: Проблемка с шифрованием русского текста Отправлено: Nord2008 от Сентябрь 11, 2009, 22:13 Здраствуйте! Я новичок в Qt и С++, так что не судите строго!:) У меня есть небольшая проблема, суть её в следующем: Пишу программу на qt для работы с базой данных sqlite. Мне нужно строки в бд шифровать алгоритмом BlowFish. Эти строки на русском языке и я везде в программе использую кодировку utf8. Проблема состоит в том что когда я шифрую русские строки то при расшифровке получаю вместо русских слов и букв иероглифы или знаки вопроса. Вот и прошу откликнуться знающих людей, что бы помогли мне в данной проблеме. Вот код:
Код Реализацию алгоритма шифрования в приложении к сообщению. Заранее благодарю всех откликнувшихся!!! Название: Re: Проблемка с шифрованием русского текста Отправлено: lit-uriy от Сентябрь 12, 2009, 06:38 >>dt.mid(i,8).toAscii()
dt - QString - внутреннее представление UTF-16, ты приводишь к ASCII, однако последняя не поддерживает символов кирилицы, только ASCII. Т.е. ты теряешь символы при преобразовании. Название: Re: Проблемка с шифрованием русского текста Отправлено: Nord2008 от Сентябрь 12, 2009, 09:44 Здраствуй lit-uriy. Спасибо большое за помошь! Но могли бы вы протестировать мой код с вашими изменениями-буду очень признателен вам!
Название: Re: Проблемка с шифрованием русского текста Отправлено: pastor от Сентябрь 13, 2009, 11:30 Nord2008, вместо toAscii() используй toLocal8Bit()
Название: Re: Проблемка с шифрованием русского текста Отправлено: Nord2008 от Сентябрь 13, 2009, 14:26 Хорошо, сейчас попробую...
Название: Re: Проблемка с шифрованием русского текста Отправлено: Nord2008 от Сентябрь 13, 2009, 15:02 Nord2008, вместо toAscii() используй toLocal8Bit() всё равно иероглифы получаються какие-то...я думаю нужно использовать toUtf8 но что то не так всё таки в моём коде..может проверишь?Название: Re: Проблемка с шифрованием русского текста Отправлено: pastor от Сентябрь 13, 2009, 16:20 Почитай в ассистанте про QTextCodec::setCodecFor*. Также можешь поискать ответ в разделе Интернационализация, локализация.
Название: Re: Проблемка с шифрованием русского текста Отправлено: Maxz от Сентябрь 15, 2009, 11:56 Я использую примерно такое:
Код: // преобразование Windows-1251 в UNICODE (UTF-8) Название: Re: Проблемка с шифрованием русского текста Отправлено: Nord2008 от Сентябрь 15, 2009, 13:17 Спасибо всем за ответы!!! Всё получилось в итоге!! Вот код:
Код
|