Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> стеганография C#, проблема с русской кодировкой 
:(
    Опции темы
СерегаГоляков
Дата 14.3.2011, 14:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Всё супер :)
*


Профиль
Группа: Участник
Сообщений: 142
Регистрация: 26.4.2010
Где: НСК

Репутация: нет
Всего: нет



Приветствую) Решил разобраться что такое стеганография,  для начала решил просто тект из TextBox запрятать в bmp картинку. 
Но сразу же проблема  с русскими буквами, хотя английские буквы, знаки и цифры норм вытаскиваются из bmp, а вот
когда текст кот хочу разбить на биты русские буквы имеют значения:
а= 1072
б= 1073 и тд
При обратном чтении байтов и потом их конвертации в символы, получается что считываются другие чтоли:

107 210 73 и получаются другие знаки.
--------------------
Список всех полезных программ в ОДНОЙ программеhttps://sites.google.com/site/coolprogramms...latnyh-programm...Пьяные белазисты в карьереhttp://www.youtube.com/watch?v=6FGNGMwxJZ4
PM WWW   Вверх
-Mikle-
Дата 16.3.2011, 09:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Невидимка Vingrad'а
***


Профиль
Группа: Экс. модератор
Сообщений: 1672
Регистрация: 22.6.2003
Где: Казахстан, Астана

Репутация: 17
Всего: 59



Не могу понять... если ты сразу записываешь символы в юникод (2 байта) то и при чтении тоже читай их как юникод. Все должно работать.

Код


string stegText = "Привет миру!";
byte[] stegBuffer = Encoding.Unicode.GetBytes(stegText);
// из-за юникода длина массива будет в два раза длинее длины текста
// побитово объединяешь с картинкой и сохраняешь

..............

byte[] stegBuffer = ............открываешь и формируешь массив из своих битов в такой же последовательности, как и при сохранении
string stegText = Encoding.Unicode.GetString(stegBuffer);



Вместо юникода можешь использовать компактный вариант UTF8.

Добавлено через 6 минут и 1 секунду
PS: Для работы с битами в данном случае могу порекомендовать использовать BitArray.


--------------------
Если тебе плюют в спину, значит ты впереди...
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0763 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.