импорт C написанных двоичных файлов в Matlab - PullRequest
2 голосов
/ 06 апреля 2010

Я прочитал пост "Чтение и запись из / в двоичный файл в Matlab", но у меня все еще есть сомнения. У меня есть двоичный файл длинных двойных значений, созданный с помощью fwrite в C и в Matlab я использую

fid = fopen('vz3.dat', 'r')
mydata = fread(fid, 'double')

где vz3.dat - мой файл. Но я получаю значения мусора в Matlab. Согласно

[cinfo, maxsize, ordering] = computer

в Matlab, мой компьютер - система с прямым порядком байтов (система упорядочения байтов). Есть предложения?

Кстати, двоичный файл обязательно должен заканчиваться на .bin. Я использую расширение .dat. Это нормально?

Большое спасибо

Ответы [ 2 ]

3 голосов
/ 06 апреля 2010

Чтобы открыть файл с прямым порядком байтов, используйте

fid = fopen('vz3.dat','r','l');

Кстати, не имеет значения, как называется файл.

0 голосов
/ 01 февраля 2013

Если вам нужно использовать дескриптор файла, открытый в другом месте, вы также можете использовать параметр machineformat для fread (это необязательно).

Документация доступна на MathWorksсайт .

...