Reads binary data from a file and places the data into an array that you have already allocated without incurring a copy of the data. Unlike the Read from Binary File function, this function avoids run-time memory allocations.

この関数のパフォーマンスは、事前に割り当てる配列によって異なります。

コネクタペーンには、この多態性関数のデフォルトのデータタイプが表示されます。


icon

入力/出力

  • cbsrn.png refnum入力

    refnum入力は、読み取るファイルに関連付けられているファイルrefnumです。

  • c1ddbl.png データ入力

    データ入力は、データを配置する配列を指定します。この関数は、配列が持つことができる最大のデータ要素を読み込みます。この関数がサポートする配列とデータタイプについては、サポート表を参照してください。

  • cenum.png バイト順序 (0:ビッグエンディアン、ネットワーク順)

    バイト順序は、結果として得られるデータのエンディアン形式を設定します。バイト順序 (エンディアン形式) は、整数が最上位のバイトから最下位のバイトへの順序、またはその逆の順序のどちらでメモリ上に配置されるかを示します。関数は、データが書き込まれたバイト順序でデータを読み取らなければなりません。

    メモ この関数では、バイト順序パラメータと、LabVIEWを実行しているホストコンピュータのネイティブのバイト順序とを一致させる必要があります。コンピュータがビッグエンディアンの場合は、 native, host order または big-endian, network order> エンディアン形式のいずれかを選択する。コンピュータがリトルエンディアンの場合は、 native, host order または little-endian エンディアン形式を選択する。
    0big-endian, network order (デフォルト)-最上位バイトが最下位メモリ・アドレスを占有する。このエンディアンフォームは、VxWorksなどのPowerPCプラットフォームで使用されます。その他のプラットフォームでは、このエンディアン形式は書き込まれたデータを読み取る際にも使用されます。
    1native, host order―ホストコンピュータのバイト順序形式を使用します。このエンディアン形式により、読み取り/書き込みの速度が向上します。
    2little-endian―最下位のバイトが最下位のメモリアドレスを占有します。このエンディアン形式は、Windows、macOS、Linuxで使用されます。
  • cerrcodeclst.png エラー入力

    エラー入力は、このノードを実行する前に発生したエラーの状態を示します。この入力は、標準エラー入力として機能します。

  • ibsrn.png refnum出力

    refnum出力は、関数が読み取るファイルのrefnumです。この出力は、他のファイル関数に配線できます。

  • i1ddbl.png データ出力

    データ出力には、ファイルから読み取られたデータが含まれます。この出力は、有効なデータのサイズに合わせてサイズ変更されません。データ入力配列が一杯になる前にLabVIEWがファイルの最後に到達すると、配列には無効な要素が含まれることになります。データ出力に入っている有効なデータの数を正確に知るには、読み取られた要素数を使用します。データ入力配列が一杯になる前にLabVIEWがファイルの最後に到達しなかった場合は、次の読み取りが前回読み取り終了時の位置から開始されるように、ファイルポインタの位置がそのまま保持されます。

  • ii32.png 読み取られた要素数

    読み取られた要素数は、ファイルのデータにより置き換えられたデータ入力配列内の要素数の合計を返します。

  • ierrcodeclst.png エラー出力

    エラー出力には、エラー情報が含まれます。この出力は、標準エラー出力として機能します。

  • 以下のブロックダイアグラムは、この関数による事前に割り当てられた配列の処理の例を示しています。「バイナリファイルから読み取る (事前割り当て)」関数が実行されるたびに、ファイルから読み取られたデータは同じ配列に配置されます。

    バイナリファイルから読み取る (事前割り当て) でのサポート

    この関数は、ファイルのデータを配置するために配線した配列に応じて、以下のように異なるレベルのサポートを提供します。

    完全サポート。関数は新規の割り当てを必要としないため、この関数は「バイナリファイルから読み取る」関数よりもおそらく速くなります。

    サポートされる。関数は新規の割り当てとコピーを必要とするため、この関数は「バイナリファイルから読み取る」関数よりもおそらく遅くなります。

    ファンクションが受け付けない。

    以下の表は、データ入力に特定の配列、または特定のデータタイプを含む配列スライスを配線した場合のサポートレベルを表しています。

    データタイプ配列隣接する配列スライス隣接しない配列スライス1
    整数
    単精度浮動小数点数
    倍精度浮動小数点数
    拡張精度、浮動小数点数値²。
    複素単精度浮動小数点数
    複素倍精度浮動小数点数
    複素拡張精度浮動小数点数値²。
    固定小数点数値²。
    ブール
    文字列
    その他のすべてのデータタイプ
    メモ
    1. LabVIEWは隣接しない配列スライスのメモリコピーを作成する必要があります。このため、隣接しない配列スライスをデータ入力に配線した場合、「バイナリファイルから読み取る (事前割り当て)」関数は「バイナリファイルから読み取る」関数より速くはなりません。
    2. 「バイナリファイルから読み取る (事前割り当て)」関数は、拡張精度、拡張精度複素数、および固定小数点データを受け入れます。しかし、この関数は、バイナリファイルからの読み込み関数のように、これらのデータ型で新しいコピーのためのメモリを確保する。

    また、この関数は、表中の各データタイプを、配列に格納されていないスカラ値として完全にサポートします。