基于LabVIEW的虚拟仪器设计第六章文件操作自动化学院控制工程系王辉第六章文件操作打开和关闭数据文件在文件中读取和写入数据读取和写入数据到电子表格格式的文件转移和重新命名文件与目录改变文件属性创建、修改和读取配置文件第六章文件操作6.1文件类型6.2文件I/O函数6.1文件类型LabVIEW支持的文件类型文本文件(TextFiles)电子表格文件(SpreadsheetFiles)二进制文件(BinaryFiles)数据记录文件(DatalogFiles)波形(Waveform)文件基于文本的测量文件(.lvm文件)数据存储文件(.tdm文件)高速数据流文件文件(.tdms文件)XML文件配置文件(ConfigurationFiles)6.2文件的基本操作基本步骤打开-读写、操作-关闭6.3文本文件和表单文件它将字符串以ASCII编码格式存储在文件中,譬如txt文件和Excel文件。这种文件类型最常见,可以在各种操作系统下由多种应用程序打开,譬如记事本,Word,Excel等第三方软件,因此这种文件类型的通用性最强。但是相对于其它类型文件,它消耗的硬盘空间相对较大,读写速度也较慢,也不能随意的在指定位置写入或读出数据。如果需要将数据存储为文本文件必须先将数据转换为字符串才能存储。6.3文本文件和表单文件读写文本文件VI6.3读写文本文件写文本文件举例读文本文件举例6.3文本文件和表单文件读写表单文件VI写表单文件读表单文件数组转表单字符串函数写文本文件写表单文件读表单文件6.4二进制文件(BinaryFiles)这是最有效率的一种文件存储格式,它占用的硬盘空间最少而且读写速度最快。它将二进制数据,譬如32位整数以确定的空间存储4个字节来存储,因此不会损失精度,而且可以随意的在文件指定位置读写数据。二进制文件的数据输入可以是任何数据类型,譬如数组和簇等复杂数据,但是在读出时必须给定参考9.4二进制文件(BinaryFiles)写二进制文件举例读二进制文件举例6.9基于文本的测量文件(.lvm文件)它将动态类型数据按一定的格式存储在文本文件中。它可以在数据前加上一些信息头,譬如采集时间等,可以由Excel等文本编辑器打开查看其内容。6.11高速数据流文件(.tdms文件)它将动态类型数据存储为二进制文件,同时可以为每一个信号都添加一些有用的信息,譬如信号名称和单位等等。在查询时可以通过这些附加信息来查询所需要的数据。它被用来在NI各种软件之间交换数据,譬如DIAdem。它比.lvm文件占用空间更小,读写速度更快。非常适合用来存储数量庞大的测试数据。6.11高速数据流文件(.tdms文件)每一个TDMS文件以三个不同层次来存储附加信息:File、group和channel。6.11高速数据流文件(.tdms文件)写TDMS文件示例6.11高速数据流文件(.tdms文件)在TDMSFileViewer中查看文件内容6.11高速数据流文件(.tdms文件)TDMS文件读操作示例小试身手1.文本文件和二进制文件的主要区别是什么?2.请说出下面这几种文件是文本文件还是二进制文件:数据记录文件(DatalogFiles),XML文件,配置文件,波形文件,LVM文件,TDMS文件。小试身手3.有一个测量程序,采集两路信号,每1s采集一次,要求每采集一次,就将采集结果写入文本文件尾部,即使重新运行程序,仍能保证数据添加到文件尾部,而不会覆盖原有数据。格式为a保留4位小数,b为整数,如右图所示。小试身手4.在LabVIEW中读取刚才写入的文件内容。5.将习题3的采集数据,采集完毕后写入表单文件,如下图所示:小试身手6.将习题3改为实时写入表单文件,添加一列日期时间以反映真实的采样时间,并在第一行包含每列的描述信息,如下图所示。日期时刻小试身手7.将右图所示的控件数据写入二进制文件,并用另一个VI将其读出查看。小试身手8.用SimulateSignalExpressVI仿真产生一个采样100000点的正弦仿真信号,并将其写入TDMS文件,要求同时为该通道设置两个描述属性:频率和采样间隔。