Простой способ конвертировать строку формата в двоичный файл

Мне любопытно узнать, есть ли простой способ (т. Е. Использование функций clib, stl или stdlib) для преобразования отформатированной (закодированной?) Строки байтов в массив байтов (беззнаковые символы):

Пример, отформатированная строка байтов:
\ X8C \ XB5 {\ x00 \ x00

чтобы:
{0x8C, 0xB5, 0x7B, 0x00, 0x00}

0

Решение

То, что вы спрашиваете, это декодирование закодированная строка в простой массив символов.

Чтобы ответить на ваш вопрос, нет (AFAIK).

Но может быть реализовано довольно легко.

Взгляните на это.

http://www.dzone.com/snippets/decode-encoded-query-string-c

Делает именно то, что вы сделали в 26 строках кода. Разница только в процентах от \ x

0

Другие решения

Шаг через строку, символ за символом. Если вы видите '\\' персонаж, вы проверяете, является ли следующий символ 'x' а затем взять следующие один или два символа (если они являются шестнадцатеричными цифрами) и преобразовать их в байтовое значение и добавить это значение в вектор назначения. Любой другой символ добавляется к месту назначения как есть. Продолжайте до конца строки.

0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector