Форум — Ответы ( К темам )
? | Алексей: Как преобразовать данные в hexadecimal формат? (09-02-2003 17:23:47) |
Помогите ПОЖАЛУЙСТА!!! Как преобразовать данные в hexadecimal формат? Например данные типа char или AnsiString. Я читаю бинарный файл в буфер, и должен в нем найти и сравнить определенные значения которые в шестнадцатеричном формате. Буду очень благодарен за любой ответ. | |
evvUA (10-02-2003 00:01:03) | |
Так ты разбери АнсиСтринг по частям (с помощью for)и читай каждый символ отдельно. Например: AnsiString str = "Hello"; str[0] = 'H'; str[1] = 'e'; str[2] = 'l'; str[3] = 'l'; str[4] = 'o'; я могу ошибиться с индексами, но надеюсь суть ты понял. И ещё, каждый символ имеет свой десятичный (16-ричный) эквивалент. Например 'H' == 104 (цифра не точная, т.к. я не помню значение всех букв ASCII). Ответил в тему? | |
Алексей (10-02-2003 03:58:17) | |
Спасибо, это все понял, а нет ли готовой функции, которая бы могла в один счет преобразовать с одного в другой форматы?
| |
Andrew (10-02-2003 09:37:41) | |
Преобразовать ты можешь с помощью добавления к строке символов префикса "0x" Например: AnsiString svalue;//Исходная строка unsigned int ivalue; //Число for (int i1 = 1; i1 <= value.Length()/4; i1++) ivalue = StrToInt("0x" + value.SubString(i1*4 — 1, 4)); Но я бы осмелился тебе рекомендовать делать наоборот: Преобразовать твои значения в строковый вид через IntToHex и искать их встроенными методами AnsiString. | |
Petro (10-02-2003 10:41:51) | |
А накой черт вам AnsiString вообще нужен? 2 Алексей: Перемещай указатель по своему буферу и просто сравнивай!!! :) Это же C++ ;) |