LabVIEW储存dat文件,Matlab读取

LuoBeiCe 记录自学LabVIEW遇到的各种问题

问题:在LabVIEW中将一个二维数组保存至dat文件,然后在matlab里面读取。

一:LabVIEW保存数组至dat文件

描述:上半部分产生一个10X10的随机二维数组。

“打开文件”函数的输入参数有三个。分别为:1.文件保存路径。2.“creat”:创建新文件,如果文件已存在,则报错。3.“write-only”,只对文件进行写的操作。

"写入二进制文件"函数输入参数有:1.要保存的二维数组。2.文件保存路径。3.错误簇。4.“little-endian"。这个参数最好选择这个,不要使用默认的参数。

”关闭文件“函数。

运行程序,前面板显示如下:

而且对应文件夹里也多了一个”测试5,dat“的文件。

 

二:接下来使用Matlab读取这个文件。

Matlab的代码如下:

描述:”fopen":打开dat文件。

L,H:是我事先存好的二维数组的大小。

“fread”:读取dat文件里面的数据。注意:前面我提到LabVIEW写入二进制文件其中一个输入参数为“little-endian”,就是因为

              Matlab读取二进制文件默认采取的就是“little-endian"模式,这个方面两者一定要配合好,否则可能会有问题。因为二维数

             组是double类型,所以这里也要指明。

B = A(2:(L*H+1)):这个地方很重要。Matlab读取的结果会比存的数组多一位(4.12前来解释,这是因为LabVIEW保存二进制文件时

            会专门保存数组的大小信息),并排成一列。比如我之前存的为10X10的二维数组。

            Matlab读出来就是101X1个,多出来第一位为0。因此我们需要取第二位及后面的。

”reshape“:把读出来的数据重新排序。最终的数组就储存在变量C里面。

运行结果如图:

任务就完成了。

posted on 2022-03-28 16:40  我shi罗  阅读(2122)  评论(0编辑  收藏  举报