新闻中心

EEPW首页 > 测试测量 > 设计应用 > Labview字符串与文件I/O

Labview字符串与文件I/O

作者: 时间:2017-01-06 来源:网络 收藏

回到前面板,点击“路径”右边的小图标:

打开一个对话框,选择文件的存储路径,如图:

选择完后,程序即可运行,运行结果如图:打开记事本,即可看到写入的文件,如图:

此程序中利用了For循环自动索引的功能,一次产生了10个数据,然后逐一写入文本。正因为此,“写入文本文件”是高层文件I/O操作函数,高层文件I/O操作函数每调用一次就会实现创建或打开文件,读写文件,关闭文件的整个过程。如果需要向文件中连续写入数据,这样的效率是非常低的。如果想要提高效率,可以采用底层文件I/O操作函数来实现写文本文件。

例二:

使用底层文件I/O操作函数向文本文件写入数据。

图中框起来的便是底层文件I/O函数

前面板的构建和例一类似,下面是程序框图:

从途中可以看出,程序进行循环后,文件则被打开,这样就可以一直向文件中输入数据,直到循环结束,才关闭文件,它大大提高了写文件的效率。

运行结果如图:

从上图可以看出,每两个数字之间正好间隔一个Tab定界符。

例三:写电子表格文件

“写入电子表格文件”函数的应用与“写入文本文件”函数的应用十分相似。它能直接写入一维或是二维的数据。程序框图如图:

图中Generate Waveform.vi也使LabVIEW自带的一个VI,它与前面所讲的Digital Thermometer.vi在同一个文件夹里,它是用于模拟产生抽样信号的。该函数默认的是将数据在表格中按行排列,那么一个二维数组的记录则只有两行,若在该接口中给其赋值“真”,则数据会按列排列。

运行结果如图:

打开保存的电子表格文件,即可看到数据

例四:读文本文件

该例采用在例一中保存的文件,程序框图如图:

说明:其中用到了一个LabVIEW自带的子VI:Extract Numbers,它位于LabVIEW8.2→examples→general→strings,如图:

单击确定后,系统会弹出下面的对话框:

选择Extract Numbers.vi,它的作用是提取由逗号,分行符号,非数值字符等分隔开的数据所组成的ASCII字符串,并将它们转换成数值数组,用于将读取的字符串转换为双精度数据类型的一维数组。运行结果如图:

例五:另一种读取文本文件的方法

上面的例子是用一个函数完成了,文件的打开,读取,关闭。和写入文本文件时一样,我们也可以通过三个函数来实现以上的三个步骤,程序框图如图:

其中For循环默认的是自动索引,在连线后,需将图中框起来的两个节点禁用索引。运行结果如图:

例六:读取电子表格文件

本例使用例三所产生的表格文件。

程序框图如图:

运行结果如图:

从结果中可以看到,因为例三在生成表格文件时采用的格式为“%.3ft”,所以从该电子表格中读取数据时,中间的一行空白LabVIEW会自动把它们默认为0数组,从而在波形图表中显示的时候会出现中间的一行红线。


上一页 1 2 下一页

评论


技术专区

关闭