您好,欢迎访问三七文档
第11章文件的I/O及保存文件的I/O及保存是对处理的值进行输入输出,并对它进行保存。I/O就是对数据的输入输出进行管理,比如从某个文件读取数据,处理后再写入某个文件中,进行保存。数据的读取和保存是LabVIEW学习的重点,也是难点,本章将全面地对数据文件的I/O及保存进行详细讲解。11.1文件操作方式LabVIEW中文件操作方式有多种,也就是对文件数据处理的类型。一般是指文件的保存和读取及一些高级操作。在LabVIEW中提供了多种格式的文件数据I/O操作函数,不同的函数有不同的特点和使用范围。11.2文件I/O的格式LabVIEW文件的I/O中,具体的操作格式有:电子表格、测量文件、文本文件、二进制文件、Zip格式、TDMS格式等。通过“函数”|“编程”|“文件I/O”下拉列表打开,如图11.2所示。1、电子表格2、测量文件3、文本文件4、二进制文件5、zip格式6、TDMS格式11.3文本文件的操作文本文件的操作主要有写入和读取,还有其他的操作如复制、删除等。文本文件也是最常见的、最方便的一种数据操作方式,它的扩展名是*.txt格式,是大多数软硬件能识别的通用形式。11.3.1文本文件的I/O路径设置在对任何文件操作时,都要进行文件路径的设置,这样才能找到文件。文本文件的路径可以有三种,分别是当前路径、相对路径、绝对路径。当前路径的设置是通过一个路径控件。在“函数”|“编程”|“文件I/O”|“文件常量”|“当前VI路径”命令下打开控件。运行时此控件会自动输出当前VI保存的位置。这样最大的好处是任何情况下文件的路径和VI位置是统一的,不会产生混乱。若当前运行的VI没有保存,则运行中会出现错误。11.3.2文本文件的写入文本文件的写入是一种将字符串或字符串数组按行写入文件。如连接该路径至文件输入端,函数先打开或创建文件,然后将内容写入文件并替换任何先前文件的内容。如连接文件引用句柄至文件输入端,写入操作将在当前文件位置开始。要在现有文件之后添加内容,使用设置文件位置函数,将文件位置设置在文件结尾。该函数不可用于LLB中的文件。它的接线图标如图11.3所示。11.3.3文本文件的读取文本的读取常用于各类的数据处理参数识别中,这也是从计算机内部获得数据的一种方式。它从一个字节流文件中读取指定数目的字符或行。该函数从文本文件中读取所有字符,将一个整数值连接到计数接线端,指定从第一个字符开始读取字符的数量。右击函数,从弹出的快捷菜单中选择读取行选项,从文本文件中读取单独的行。在快捷菜单中选择读取行选项时,连接一个整数值至计数输入端,指定从第一行开始读取行的数量。在计数中输入值-1,从文本文件中读取所有字符和行。它的接线端口如图11.6所示。11.4二进制文件的操作二进制文件的操作是一种最为简单的方式。它和文本文件一样,主要分为输入和输出两类操作。它主要对数据按原始方式保存,所以数据密度大,保存时占用空间小。但是它不能直接查阅,必须经过再次转换为正常代码才可以查看。这样用户对数据的随意查阅带来不便。下面将分节对各类的使用及编程操作方法进行讲解。11.4.1二进制文件的写入二进制文件写入中,先是产生一个波形数据,再通过二进制写入函数写到文件。此函数是将二进制数据写入新文件,将数据添加到现有文件,或替换文件的内容。如连接至文件(使用对话框)输入的是一个路径,函数先打开或创建文件,将内容写入文件,然后替换任何先前文件的内容。如连接至文件(使用对话框)的是一个文件引用句柄,写入操作在当前文件位置开始。要在现有文件之后添加内容,使用设置文件位置函数,将文件位置设置在文件结尾。该函数不可用于LLB中的文件11.4.2二进制文件的读取从文件中读取二进制数据,在数据中返回。读取数据的方式取决于指定文件的格式。该函数不可用于LLB中的文件。使用拒绝访问函数,确保读取文件时其他用户不能修改该文件。如需进行随机访问,使用设置文件位置函数。程序接线框图如图11.12所示。11.5数据记录文件的操作数据记录函数用于打开和关闭数据记录文件、读取和写入数据记录文件、获得和设置数据记录文件的位置,以及获取及设置数据记录的数量。它位于“函数”|“编程”|“文件I/O”|“高级文件函数”|“数据记录”下拉列表,如图11.15所示。11.5.1数据记录写入数据记录写入函数是将记录写入由引用句柄所指定的一个已打开的数据记录文件中。文件尾是写入的起始位置。编程中将把一个波形写入数据记录文件中。11.5.2数据记录读取数据记录读取由引用句柄所指定的数据记录文件的记录并将记录在记录中返回。当前的数据记录位置即是读取的起始位置。它的程序框图如图11.18所示。11.6Office系列的操作Office系列的操作就是对文档、表格、数据库等一些SQL数据的操作。它是最常用的方法之一。学会对这几类文件的操作,就可以在编程时对数据记录或对数据读取。本章将从三个方面讲解对Office的操作。11.6.1对Word的操作Word是现代办公软件中不可少的一种产品,它的操作主要是打开文件进行读写。Word操作和文本文件的操作类似。所有对文本文件夹的操作都可以用到对Word的文件操作。下面对Word进行写入并读取操作编程。11.6.2对Excel的操作对Excel的操作就是一些数据的写入,这样可以直接方便地记录数据。它的操作过程比较复杂,关键是在建立Excel时,一个Excel文档可以包含几个表,每一个表的操作又完全不一样。下面编写一个写入Excel的程序,它能把一组用户输入的数据自动打开表格并写入。11.6.3对数据库的操作数据库的操作是一个对已经建好的数据读取或增加、修改的过程。这是讲解最经常用的两种方法,对数据库的写入和读取。1、写入数据库11.6.3对数据库的操作2、数据库读取11.7数据的打印在现代办公自动化的时代,有大量资料需要现场打印,这样可以把有些资料以书面形式保存。本节将讲解在线打印数据及表格,这也是一种数据记录的重要形式。在LabVIEW程序中对数据和图形的打印是通过调用报表控件完成的。下面详细讲解编程原理及过程。11.8压缩文件压缩文件是对文件在程序运行过程中就直接以压缩文件的形式进行存放。这样做的最大好处是占用空间小,可以节约有限有资源。但是任何事都有两面性,压缩文件操作时点用大量的系统时间,造成速度上比其它的几种操作要慢,这也是经常用此类操作的原因。这里先对它的操作函数讲解,然后引用实例进行编程说明。11.8.1压缩函数压缩函数在文件I/O模块中,它也是通过调用直接进行操作的形式工作。通过“函数”|“编程”|“文件I/O”|“Zip”下拉列表打开它的函数库,如图11.45所示。11.8.2对文件压缩压缩函数可以压缩各类文件,方便了一些数据的存贮。本节将以压缩一个文件到目标位置为例进行编程。11.9高级文件操作高级文件操作用来完成一些目录、文件大小、路径等操作。通过“函数”|“编程”|“文件I/O”|“高级文件函数”下拉列表打开,如图11.56所示。此下拉列表中包括许多对文件的特殊操作函数,如获取文件的信息、删除文件等操作。11.9.1获取文件信息获取文件的信息有很多,如比文件位置、大小、创建者、权限等。这里就以读取这些相关信息为例来说明编程的过程。11.9.2对文件删除对文件的删除是一种比较实用的操作方式,“删除文件”函数能在选定要删除文件的路径后,自动删除此文件。并可以设置在删除时时否显示对话框。“删除文件”函数的接线端口如图11.64所示。11.9.3创建文件夹复制文件创建一个文件夹,并把相应的文件复制到此文件夹中,本节操作的目标是为了对以后的编程中用到的路径和文件夹操作有一定的基础。创建文件夹可以在系统编程中自动保存数据在其中。复制文件可以保证在系统运行时自动复制并保存到其他地方,可以实现一个文件多地方保存,方便对数据的备份和存档。编程过程如下所述。11.9.4文件对话框文件对话框将显示对话框用于确定文件路径或目录。可使用该对话框选择现有文件或目录,也可为新文件或目录选择位置。把它放置在程序框图上时,就会自动弹出它的属性对话框,如图11.71所示。11.10小结本章通过对文件和I/O的操作,讲解了LabVIEW中保存数据的文件类型,同时对每一类的读写操作方法进行了说明,并以实例操作的方式演示出来。其中文本数据的保存和操作是常见的一种方式,也是操作最为简便、功能强大的数据处理。在应用中,对Office和数据库的操作可能较为复杂,适合于界面更完美、大数据量时应用。下一章将对各类高级应用进行讲解。11.11练习题文件的I/O大体上可以分为哪几类?文本文件的操作中,能否让其显示字体的和大小发生变化?若能,是通过哪些方法实现的?二进制文件有什么优点和缺点?为什么在现实编程中不经常使用这种文件形式?在Word中能自动插入图片吗?怎样实现?编写一个程序,实现对Excel的表格复制。练习从数据库中读取数据并显示出来,对数据按某一方式排序。试编写程序对指定地址的压缩文件解压。练习删除所有磁盘上某一文件名相同的文件。
本文标题:文件的IO及保存
链接地址:https://www.777doc.com/doc-4682170 .html