binary открытие файла

Bupyc

Guest
binary открытие файла

Есть файл формат которого я знаю:
Тип Длина Описание
------------------------------------------
String 5 Если "POT14" - значит файл является уровнем для Элмы.
SmallInt 2 Первые два байта следующего числа (судя по всему, нигде не используются)
Integer 4 Случайное число, используемое для связи демки с уровнем
double 8 Integrity 1
double 8 Integrity 2
double 8 Integrity 3
double 8 Integrity 4
........
........
........
и т.д.

Как мне считать эти переменные? Я не знаю как небольшое число можно растянуть на double...
 

SiMM

Новичок
Re: binary открытие файла

Автор оригинала: Bupyc
Как мне считать эти переменные?
[m]fread[/m]+[m]unpack[/m], только имей в виду, что формат double (если речь идёт о числах с плавающей запятой) бывает разным.
Я не знаю как небольшое число можно растянуть на double...
Вообще ничего не понял (вопрос поставлен некорректно).
 

Bupyc

Guest
Допустим я знаю, что первые 8 байт это double, как мне его загнать в переменную в правильном формате.
 

SiMM

Новичок
Думаю, следующего примера должно быть более, чем достаточно:
PHP:
$test=pack('a5vVd','POT14',12345,1234567890,0.123456789);
print_r(unpack('a5String/vSmallInt/VInteger/dIntegrity',$test));
 
Сверху