Re: смотрелка двоичных файлов со структурой
>>>>> Anton Stratonnikov <billic@yandex.ru> writes:
>>>>> 19.03.2015 21:52, Ivan Shmakov пишет:
>>>> Нужна смотрелка для двоичных файлов. Чтобы пользователь мог
>>>> задать (в граф. интерфейсе или в файле), мол первые 4 байта это
>>>> ASCII текст, название поля — «имя», потом 2 байта это целое число,
>>>> порядок байтов сетевой, название поля — возраст и т. д. и чтобы
>>>> потом подсунуть этой утилите любой файл и она красиво вывела
[…]
>> Во-вторых, для чтения чисел в машинном представлении в общем случае
>> потребуется что-то вроде htons () и подобных, которые объявлены в
>> netinet/in.h. (Предполагая little-endian; IOW, «это не то решение,
>> которое вы ищете.»)
С другой стороны, учитывая явное упоминание «сетевого порядка»
выше, — может быть уместно.
> Не соглашусь. Тот же fgets читает нужное количество байт в указанное
> место в памяти,
fread (). Поскольку fgets () остановится на первом же байте со
значением 10 (= \n.) Что еще хуже, fgets () не возвращает
количество считанных из потока байт.
> которое позднее можно прочитать как нужный тип данных.
В общем случае, это не так просто. Например, если речь идет о
числах «произвольной» разрядности — по типу DER/BER или MIDI.
[…]
--
FSF associate member #7257 http://boycottsystemd.org/ … 3013 B6A0 230E 334A
Reply to: