Я думаю, что проблема может быть в том, что тип BYTE может быть typedef для char.Если это так, то всякий раз, когда вы пытаетесь записать BYTE в поток, он будет печатать символ ASCII, соответствующий этому байту, а не числовое значение байта.Обратите внимание, что символы - и 7 соответствуют, например, значениям ASCII 45 и 55.
Чтобы исправить это, вам нужно будет сделать две вещи:
- Введите приведенные байтыПишем в какой-то целочисленный тип, например int или short, прежде чем записывать их в файл.Это заставляет поток записывать числовое значение, а не символ.
- Выводить некоторое количество пробелов между всеми данными, которые вы выводите.Прямо сейчас все течет вместе, потому что нет пробелов, что затрудняет чтение.
Надеюсь, это поможет!