Labview 二进制文件处理

Labview 二进制文件处理

主要有两个函数 Read From Binary FileWrite To Binary File

Write To Binary File

一个简单的例子

举一个简单的例子,把一个数组按照二进制文件存储。
Labview 二进制文件处理_第1张图片

这里使用了Build PathWrite To Binary File, 这样可以在指定位置生成一个二进制文件。

但是这个二进制文件却并不是10×8bit/1byte = 10byte,而是14个字节大小

Labview 二进制文件处理_第2张图片

详细参数

请看这个函数的详细输入输出:
Labview 二进制文件处理_第3张图片

prepend array or string size?(T)

它表示当输入端的数据类型是数组或字符串时是否在文件头包含该数组的大小或字符串的长度,默认是True。该长度通过一个32 bits(4 Bytes)的整型表示,因此当往二进制文件中写入数组和字符串时,可以决定是否需要将大小和长度信息写入文件头。

我们如果用Read From Binary File 去读取上面那个文件,会显示这个长度

Labview 二进制文件处理_第4张图片

如果我们把这个参数设为False,数据就变成这样:
在这里插入图片描述

相对应的文件大小:

在这里插入图片描述

测试用程序如下(Read From Binary File相关的下面介绍)和:

Labview 二进制文件处理_第5张图片

因此我们可以通过读取某个二进制文件的前四位来表明这个二进制文件的大小(数组或字符串)

byte order

在LabVIEW的写二进制文件节点(Write to Binary File)中,Byte Order设置用于配置写入文件的字节顺序。它有两种选项:

  1. Little-endian(小端):即低有效字节在前,高有效字节在后。在Intel CPU中常用。
  2. Big-endian(大端):即高有效字节在前,低有效字节在后。主要在ARM和MOTOROLA CPU中使用

使用默认即可,通常不需调整。

Read From Binary File

Labview 二进制文件处理_第6张图片

一些参数和上述Write To Binary File类似

data type

设置函数用于从二进制文件中读取的数据类型。该函数将从当前文件位置开始的数据解释为什么数据类型

比如在上述例子中,如果我们在data type中输入一个U8数据,那么读取的时候会按照U8来读取,也就是每个字节解释为一个数据,由于我们输入数据的时候也是按U8来数据的,我们会得到正确的结果。

如果我们把输出改成U16的,那么读取的时候将会将两个字节作为一个数字,结果如下:
Labview 二进制文件处理_第7张图片

举例子,以前六位为例,在U8下能正常解释为0,1,2,3,4,5;但是如果以U16去解释,就会变成如下情况:

00000000 00000001 00000010 00000011 00000100 00000101
0 1 2 3 4 5
\ 1 \ 512+2+1=515 \ 1024+4+1=1029

count

count是要读取的数据元素的数量。数据元素可以是字节或数据类型的实例。该函数返回数据中的计数数据元素,或者如果它到达文件的末尾,它返回迄今为止读到的所有完整的数据元素和一个文件末尾错误。默认情况下,该函数返回一个单一的数据元素。如果count为-1,该函数从当前文件位置开始读取整个文件。如果count小于-1,函数会返回一个错误。

Labview 二进制文件处理_第8张图片
Labview 二进制文件处理_第9张图片
相关程序下载位置:
https://download.csdn.net/download/Tuing_/87755415

你可能感兴趣的:(Labview,数据分析)