2

「Matlab でバイナリ ファイルを読み書きする」という投稿を読みましたが、まだ疑問があります。Cでfwriteを使用して作成されたlong double値のバイナリファイルと、使用しているMatlabがあります

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

vz3.dat は私のファイルです。しかし、Matlab でガベージ値を取得しています。によると

[cinfo, maxsize, ordering] = computer

Matlab では、私のコンピューターはリトルエンディアン システム (バイト順序システム) です。助言がありますか?

ところで、バイナリ ファイルは必ず .bin で終わる必要がありますか。私は .dat 拡張子を使用しています。そうしてもいいですか?

どうもありがとう

4

2 に答える 2

3

リトルエンディアンでファイルを開くには、次を使用します

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

ちなみに、ファイルの名前は関係ありません。

于 2010-04-06T16:07:25.517 に答える
1

他の場所で開いているファイルハンドルを使用する必要がある場合は、machineformatパラメータto fread(オプション)を使用することもできます。

ドキュメントはMathWorksサイトで入手できます。

于 2013-02-01T16:18:58.580 に答える