MATLAB 7.13.0.564 (R2011b), UBUNTU 12.04 (точный) 64-бит
Я пытаюсь прочитать подмножество (не начиная с начала) 2D-данных из двоичных файлов. Я знаю, что 1 набор 2D-данных составляет 5838952 байта:
>>whos
DATA 5747x127 5838952 double
Я пытаюсь использовать fseek, чтобы пропустить первые 400 наборов 2D-данных:
fseek(fid,5838952*400,'bof');
а затем прочитайте в следующих 100 наборах данных:
for i = 1:100
DATA(i,:,:) = fread(fid,[5747 127],'int16');
end
Но код продолжает читать первые 100 наборов 2D-данных, не пропуская первые 400, как я и хотел. Кто-нибудь знает, почему? Благодарить!
редактировать:
If I do
fseek(fid,5838952*400,'bof');
position = ftell(fid)
Я получил:
position =
0
fseek
? Из документации: возвращает 0 при успешном выполнении операции. В противном случае возвращается -1. - person smn   schedule 20.02.2015