您的位置 首页 > 数码极客

〈后如何读取〉如何读取文件…

背景

在软件开发中,数据文件的存储与读取操作一般是必不可少的环节。存取数据的文件格式大致可分为两大类,分别是文本格式和二进制格式,其中,文本格式(或叫ASCII码文件)通用性强、直观,但占用空间比较大,存取速度比较慢,而二进制文件存取速度快、占用空间小,但通用性差,用户需要知道存储数据的数据类型,才可以准确还原文件内容。

这次通过例子说下在LabVIEW平台中关于文本文件的读写操作方法。

例1:最简单的一个例子

例子要求:将字符串“我爱LabVIEW!”以文本文件的格式存储到计算机的D盘上,文件名称为“a.txt”,存储完成后,立即读出该文件内容,并显示到前面板的字符串控件上。

程序运行后界面如下图所示:

实现代码如下:

代码中先后使用了“打开/创建/替换文件”、“写入文本文件”、“设置文件位置”、“读取文本文件”和“关闭文件”等函数,可以看出,LabVIEW中文本文件操作的编程方式同其它如C/C++语言类似,遵循着下面的三个步骤:

  • 打开文件
  • 读写文件
  • 关闭文件

需要说明的是,在上面代码中,“写入文本文件”与“读取文本文件”两个函数之间使用“设置文件位置”函数,其原因是,将内容写入文本文件这步操作执行完毕后,当前文件的指针位于文件的末尾,若此时直接读取文件内容,将从文件的末尾读取,读取的内容当然为空了,所以此时在不执行“关闭文件”的操作下,必须手动使用“设置文件位置”函数将文件当前指针移动到文件的开始位置。

例2:实用的一个例子

该例子模拟一个实际的数据采集与存取场景。在例子中产生一个正弦波形数据,然后将波形数据以文本文件的格式存储到计算机的D盘上,文件名称为“b.txt”,波形数据点数为500点,采样频率为1000Hz,正弦信号频率10Hz,幅值为5,文件中不仅包含了每个采样点的数据值,也包含了采样间隔信息。同样,在存储完成后,立即读出该文件内容,将波形数据显示到前面板的波形图控件上。

先看下程序运行后的界面:

存储的文件内容如下:

实现代码如下:

整体操作步骤同前例相同,依照着打开文件、读写文件、关闭文件的顺序执行。

在波形数据存储方面,代码中使用“正弦函数”输出一个正弦波形数据,在波形数据中抽取出采样间隔dt和采样数据Y,然后将采样数据Y使用“数组至电子表格字符串转换”函数将其转换为字符串,接着使用“格式化写入字符串”函数将所有内容转换为字符串,最后使用“写入文本文件”函数即可将采样间隔和采样数据写入文本文件中。

在波形数据读取方面,首先将文件指针移动到文件开始位置,使用“读取文本文件”函数将文件所有内容读出为一个字符串,然后在字符串中使用“扫描字符串”函数先将采样间隔dt抽取出来,然后使用“电子表格字符串至数组转换”函数将剩下的内容读出为二维的double型数组,索引第0列即为采样数据Y的值,最后将dt和Y组合成一个波形数据输出到波形图控件上进行显示即可。

结论

文本文件的读写操作,在图形化的编程语言LabVIEW平台上实现,相对于其它高级编程语言如C/C++来讲,由于LabVIEW中对文件操作类的函数进行了高度封装,因此,在编程难度上要低的多,具有较高的开发效率。

大家加关注并私信回复:LabVIEW006,可获取该文章对应的LabVIEW原程序下载。

欢迎加关注,共同交流。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“后如何读取,如何读取文件,如何读取发票,如何读取光盘”边界阅读