2010-10-17 3 views
0

C++ нужно, чтобы помочь мне для работы шестнадцатеричной строки с помощью C++работать с данными Hex с помощью

  1. как открыть файл двоичного шестнадцатеричные данных построчно C++
  2. как разделить линию, используя разделитель как 0x3D C++
  3. как хранить все линии в векторной карте, кроме линии, основанной на поиске.

ex. синтаксиса файл двоичного

32 32 32 32 32 32 30 3D 32 30 31 31 31 30 31 30 

32 32 32 32 32 32 31 3D 32 30 31 31 31 30 31 30 

32 32 32 32 32 32 32 3D 32 30 31 31 31 30 31 30 

32 32 32 32 32 32 33 3D 32 30 31 31 31 30 31 30 

ограничитель = 3D

поиск = 0x32 0x32 0x32 0x32 0x32 0x32 0x32

последнего шаг, как выход основан из поиска как 0x32 0x30 0x31 0x31 0x31 0x30 0x31 0x30 магазина полукокс *

пожалуйста, помогите мне

+0

http://www.cplusplus.com/reference/iostream/ios_base/flags/ – DumbCoder

+1

Если ваш двоичный файл имеет \ n символов, которые вы интерпретируете как конец строки, тогда файл не является двоичным, а текстовым. – Dialecticus

+0

hi JoshD, текстовый файл, содержащий, как и выше, шестнадцатеричные данные –

ответ

0

Вы не слишком ясны.

Я предполагаю, что у вас есть файл с этими символами (бит, TEXT-файл, а не двоичный), и вы хотите прочитать его по очереди, затем разделите строку eache на «3D», а затем сохраните каждую часть в символ *.

Прежде всего, прочитайте об открытии файла для чтения и о том, как читать строки за строкой, вы найдете его в любом учебнике.

Во-вторых, используйте strtoken(), чтобы разделить строку на «3D». Помните, что на данный момент это только текст, забудьте о гексагоне.

Позже вы можете использовать scanf(), чтобы читать каждую часть как шестнадцатеричную и хранить их в char *, тогда вы можете сравнить это и сохранить то, что хотите.

Если файл двоичный, вам нужно будет искать функцию getc() или gets(), но идея одинаков. На втором этапе, если вам нужно разделить его на шестнадцатеричное значение 0x3d, просто сделайте это.

Смежные вопросы