2012-03-15 5 views
-1

Я сохраняю один байт в цикле в файл. Если я сохраняю сначала (двоичный) a7, а затем b5, в hexdump я могу найти b5a7. Это правильно?Сохранить байт в файл

Добавлен код:

char byte = 0; // this can change 
ofs.write((char*)byte,1); 
+1

Хорошо, почему бы вам просто не попробовать? –

+1

Почему? Это может быть случай, если вы сохраните/загрузите их как слово, но не как байты. –

+0

Я добавил предварительный просмотр моего кода. – user42464677

ответ

4

Нет, не нормально. Если вы пишете один байт за раз, они должны быть в том порядке, в котором вы их написали. Байты подкачка будет происходить на прямой порядке байт машины, если вы пишете количество двухбайтового:

short x = 0xa7b5; 

fwrite(&x, 2, 1, some_file); 

Теперь (при условии мало-Endian машины) файл будет содержать 0xb5 с последующим 0xa7.

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