首页 理论教育LabVIEW2012中文版虚拟仪器操作详解

LabVIEW2012中文版虚拟仪器操作详解

【摘要】:如需将文本字符串写入文本文件,可用写入文本文件函数自动打开和关闭文件。例8-1:文本文件的写入。文本文件的读取由读取文本文件VI来完成,本实例演示读取文本文件VI的使用方法。程序中,读取文本文件VI有两个重要的输入数据端口,分别是文件和计数。在实例中,读取文本文件VI读取D盘根目录下的data文件,该文件中的数据由实例8-1的程序存入,并将读取的结果在文本框中显示出来。

要将数据写入文本文件,必须将数据转化为字符串。

由于大多数文字处理应用程序读取文本时并不要求格式化的文本,因此将文本写入文本文件无需进行格式化。如需将文本字符串写入文本文件,可用写入文本文件函数自动打开和关闭文件。

由于文字处理应用程序采用了“文件I/O”VI无法处理的字体、颜色、样式和大小不同的格式化文本,因此从文字处理应用程序中读取文本可能会导致错误。

如需将数字和文本写入电子表格或文字处理应用程序,使用字符串函数和数组函数格式化数据并组合这些字符串。然后将数据写入文件。

格式化写入文件函数可将字符串、数值、路径和布尔数据格式化为文本,并将格式化以后的文本写入文件。该函数可一次实现多项操作,而无需先用格式化写入文件函数格式化字符串,然后用写入文本文件函数将结果字符串写入文件。

扫描文件函数可扫描文件中的文本获取字符串、数值、路径和布尔值并将该文本转换成某种数据类型。该函数可一次实现多项操作,无需先用读取二进制文件或读取文本文件函数读取数据,然后使用扫描字符串将结果扫描至文件。

例8-1:文本文件的写入。

978-7-111-40983-0-Chapter08-117.jpg新建一个VI,在程序的程序框图新建一个循环次数为200的For循环。

978-7-111-40983-0-Chapter08-118.jpg在For循环中用余弦函数产生余弦数据。

978-7-111-40983-0-Chapter08-119.jpg使用格式化写入字符串函数(位于函数选板>>“字符串”子选板中)按照小数点后保留四位的精度将余弦数据转换为字符串。

978-7-111-40983-0-Chapter08-120.jpg将转换为字符串后的数据,索引成为一个数组,一次性存储在D盘根目录下的data文件中。

实例的程序框图如图8-112所示。

运行程序,可以发现在D盘根目录下生成了一个名为data的文件,使用Windows的记事本程序打开这个文件,可以发现记事本中显示了这200个余弦数据,每个数据的精度保证了小数点后有4位,如图8-113所示。

可以使用Microsoft Excel电子表格程序打开这个数据文件,绘图以观察波形,如图8-114所示,可以看到图中显示了数据的余弦波形。

978-7-111-40983-0-Chapter08-121.jpg

图8-112 程序框图(www.chuimin.cn)

978-7-111-40983-0-Chapter08-122.jpg

图8-113 程序存储的余弦数据

978-7-111-40983-0-Chapter08-123.jpg

图8-114 用存储在文本文件中的数据在Microsoft Excel中绘图

从本实例中可以发现,使用写入文本文件VI可以将文本文件存储称为电子表格文件的格式,也就是说这个实例揭示了电子表格文件其实是一种特殊的文本文件,用写入文本文件VI存储的文件同样可以为Microsoft Excel这样的电子表格处理软件打开并编辑。

例8-2:文本文件的读取。

文本文件的读取由读取文本文件VI来完成,本实例演示读取文本文件VI的使用方法。

文本文件的读取演示程序的程序框图如图8-115所示。程序中,读取文本文件VI有两个重要的输入数据端口,分别是文件和计数。两个数据端口分别用以表示读取文件的路径、文件读取数据的字节数(如果值为-1,则表示一次读出所有数据)。在实例中,读取文本文件VI读取D盘根目录下的data文件,该文件中的数据由实例8-1的程序存入,并将读取的结果在文本框中显示出来。程序的前面板及运行结果如图8-116所示。

可见,用读取文本文件VI可以将文本文件中的数据以字符串的格式读出,并作为一个字符串来存储。

由于计算机中的数据都是二进制格式来存储的,因而无论在将字符串存储为文本文件,还是从文本文件读取字符串,都要经过二进制格式到文本格式的数据类型转换,这将消耗时间和系统资源,因而对于数据量大,要求存储,读取效率高的场合,文本文件往往是不适用的,这时更为合适的文件格式是二进制文件。

978-7-111-40983-0-Chapter08-124.jpg

图8-115 程序框图

978-7-111-40983-0-Chapter08-125.jpg

图8-116 程序前面板