Matlabでバイナリファイルを読み込む方法

MATLAB では、二進ファイルを fread 関数を使って読み込めます。fread 関数の構文は次のとおりです。

data = fread(fid, size, precision, skip, machineformat)

パラメータ説明:

  1. fileID:fopen関数でバイナリファイルを開いた際に取得できる、バイナリファイルのファイルID
  2. サイズ: 読み込む要素のサイズで、スカラーまたはサイズ2のベクトルにすることができます。スカラーの場合は要素をサイズ個読み込み、サイズ2のベクトルの場合は要素を size(1) * size(2) 個読み込みます。
  3. 精度:取得するデータの型は、以下のいずれか
  4. ubit1、ubit2、ubit4、ubit8:1、2、4、8ビットの符号なし整数
  5. int8、int16、int32、int64:負の値が使える整数、8、16、32、64ビット使用する
  6. ‘uint8’、 ‘uint16’、 ‘uint32’、 ‘uint64’:符号なし整数で、それぞれ 8、16、32、64 ビットの幅を持つ
  7. 「シングル」:単精度浮動小数点数、32bit
  8. ダブル:倍精度浮動小数点数、64ビット
  9. スキップ: スキップするバイト数。既定値は0で、スキップしないことを示します。
  10. 機械語形式のバイナリのマシンフォーマットで、デフォルトの「ネイティブ」は現在使用しているコンピュータのフォーマットと同じです。

バイナリファイルの読み取り例を以下に示します。

fileID = fopen('binaryfile.bin', 'rb');  % 以二进制读取方式打开文件
data = fread(fileID, Inf, 'double');  % 读取文件中的所有双精度浮点数
fclose(fileID);  % 关闭文件
% 处理读取到的数据

上記のサンプルでは、’binaryfile.bin’が読み込むべきバイナリファイルのファイル名です。ファイルはfopen関数でバイナリ読み込みモードで開かれます。次に、fread関数でファイル内の全ての double 浮動小数点数が読み込まれ、読み込んだデータは変数 data に格納されます。最後にファイルは fclose 関数で閉じられます。必要に応じて、読み込まれたデータはさらに処理することができます。

コメントを残す 0

Your email address will not be published. Required fields are marked *


广告
広告は10秒後に閉じます。
bannerAds