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 引用句柄输入

    引用句柄输入是要读取文件的引用句柄。

  • c1ddbl.png 数据输入

    数据输入指定要放置数据的数组。该函数读取数组中存放的所有元素。关于该函数支持的数组和数据类型,请参考支持表

  • cenum.png 字节顺序(0:big-endian, network order)

    字节顺序设置结果数据的endian形式。字节顺序,或endian形式,表明在内存中整数是否按照从最高有效字节到最低有效字节的形式表示,或者相反。函数必须按照数据写入的字节顺序读取数据。

    注: 该函数要求字节顺序参数与LabVIEW所在的计算机的字节顺序一致。如果计算机是大端格式,请选择 native, host orderbig-endian, network order> 端格式。如果计算机是小字节形式,请选择 native, host orderlittle-endian 字节形式。
    0big-endian, network order (默认)-最重要字节占用最低内存地址。该形式用于PowerPC平台(例如VxWorks)。该endian形式也在读取由其他平台上写入的数据时使用。
    1native, host order-使用主机的字节顺序格式。该形式可提高读取写速度。
    2little-endian-最低有效字节占据最低的内存地址。该形式用于Windows、macOS和Linux。
  • cerrcodeclst.png 错误输入

    错误输入表明该节点运行前发生的错误条件。该输入将提供标准错误输入功能。

  • ibsrn.png 引用句柄输出

    引用句柄输出是函数读取的文件的引用句柄。可将该输出连接至其他文件函数。

  • i1ddbl.png 数据输出

    数据输出中是从文件中读取的数据。输出不会为了只包括有效数据而调整大小。如数据输入在填满之前LabVIEW就达到文件末尾(EOF),数组中将会包含部分无效元素。读取元素的数量输出表示数据输出中有效数据的确切总量。如数据输入数组被填满之前LabVIEW没有到达文件末尾,LabVIEW将把指针停留在读取结束的位置。下次读取从上次读取停止的位置开始。

  • ii32.png 读取元素的数量

    读取元素的数量返回数据输入数组中被文件数据替换的元素的总量。

  • ierrcodeclst.png 错误输出

    错误输出包含错误信息。该输出提供标准错误输出功能。

  • 下列程序框图显示了该函数如何与预分配数组配合使用。预分配的读取二进制文件函数运行时,LabVIEW将把从文件读取的数据放入相同的数组。

    预分配的读取二进制文件的支持情况

    该函数对不同类型数组的支持不尽相同:

    完全支持。函数不要求新的分配任务,比读取二进制文件函数更快。

    支持函数要求新的分配任务的数据拷贝,比读取二进制文件函数更慢。

    功能不接受。

    下表显示了该函数对各种数组或数组块数据输入的支持情况。

    数据类型数组连续的数组块非连续的数组块1
    整型
    单精度浮点数,浮点数值
    双精度浮点数
    扩展精度浮点数值²
    单精度浮点复数
    双精度浮点复数
    复杂的扩展精度浮点数值²
    定点数值²
    布尔
    字符串
    所有其他类型
    注:
    1. LabVIEW必须为非连续的数组块创建内存拷贝。如连接非连续的数组块至数据输入,预分配的读取二进制文件函数并不比读取二进制文件函数更快。
    2. 预分配的读取二进制文件函数可处理扩展精度、复数扩展精度和定点数据。不过,该函数会为这些数据类型的新副本分配内存,就像从二进制文件读取函数一样,因为它无法将数据放入现有分配中。

    该函数也支持上述类型在表格中使用。