![]() |
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]() ![]() ![]() |
|
naz191 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 3.8.2010 Репутация: нет Всего: нет |
Есть у меня содержание одной картинки в виде hex (ну и bin - перевел). Содержание вытащил из картинки и перевел в текст в виде hex
Пробую "собрать" файл... только вот создает файл текстовой - т.е. Я ввожу в мемо код (hex, bin). По идее прога должна конвертировать его в Нормальный рабочий *.png. В место этого получаю тот же текст только в *.png и в результате *.png не читабелен (((
В чем моя ошибка? Ну или подсказку? |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Не понятно.
Покажи кусок текста. |
|||
|
||||
imageman |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 30.9.2004 Репутация: 1 Всего: 1 |
подозреваю, что memo1.Text не может содержать все 256 символов (с кодами от 0 до 255).
Если в memo1 строка типа '012abc', то её ещё нужно сконвертировать. А вообще, действительно, нужно посмотреть пример строки |
|||
|
||||
naz191 |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 3.8.2010 Репутация: нет Всего: нет |
Вот кусочки... первый в Hex
Второй двоичный
Это сообщение отредактировал(а) naz191 - 30.11.2010, 09:01 |
||||||
|
|||||||
imageman |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 30.9.2004 Репутация: 1 Всего: 1 |
отсюда исходник hextoint взять преобразователь 16в10 систему счисления
пары цифр (0d) прогонять через нее и прибавлять к строке. т.е. что-то вроде var s:AnsiString; s:=s+chr( HexToInt('0d') ); а потом строку s писать в файл как ты хотел (надеюсь не попутал ничего) |
|||
|
||||
RinOSpro |
|
|||
Unregistered |
Для Hex:
Это сообщение отредактировал(а) RinOSpro - 2.12.2010, 15:25 |
|||
|
||||
remax |
|
|||
![]() Доцент ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 686 Регистрация: 7.4.2002 Где: Украина, Харьков Репутация: 1 Всего: 5 |
В принципе, в Delphi уже есть готовая функция HexToBin.
function HexToBin(Text, Buffer: PChar; BufSize: Integer): Integer и обратная ей процедура BinToHex procedure BinToHex(Buffer, Text: PChar; BufSize: Integer); и живут они в Classes ![]() -------------------- Как бы ты не старался быть хорошим и правильным человеком с принципами и уважительным отношением к другим, всегда найдется кто-то, кто бросит в тебя какашку |
|||
|
||||
Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
И какое отношение они имеют к данной задаче? Они умеют пилить шестнадцатиричный текст по пробелам и переводить его в стрим? Вряд ли... ![]() |
|||
|
||||
remax |
|
|||
![]() Доцент ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 686 Регистрация: 7.4.2002 Где: Украина, Харьков Репутация: 1 Всего: 5 |
такое же самое отношение, что и HexToInt, на который ссылается imageman. Только это стандартная функция и немного более функциональная.... Да, для того чтобы использовать надо сперва пробелы убрать, например так: HexStr := StringReplace(HexStr, ' ', '', [rfReplaceAll]); Ну, а дальше уже дело техники... -------------------- Как бы ты не старался быть хорошим и правильным человеком с принципами и уважительным отношением к другим, всегда найдется кто-то, кто бросит в тебя какашку |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Общие вопросы" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |