7.2.9 高级文件I/O函数
文件I/O选板上的函数可以控制单个文件I/O操作,这些函数可创建或打开文件,向文件读写数据及关闭文件。上述VI可实现以下任务。
创建目录。
移动、复制或删除文件。
列出目录内容。
修改文件特性。
对路径进行操作。
使用高级文件VI和函数对文件、目录及路径进行操作。高级文件函数子选板如图7-105所示。

图7-105 高级文件函数子选板
1.获取文件位置
该选项功能为获取返回引用句柄指定的文件的相对位置。获取文件位置函数的节点图标及端口定义如图7-106所示。
2.获取文件大小
该选项功能为获取返回文件的大小。获取文件大小函数的节点图标及端口定义如图7-107所示。

图7-106 获取文件位置函数

图7-107 获取文件大小函数
文件:该输入可以是路径也可以是引用句柄。如果是路径,节点将打开文件路径所指定的文件。
引用句柄输出:函数读取的文件的引用句柄。根据对文件需要进行的操作,可以将该输出连接到另外的文件操作函数上。如果文件输入为一个路径,则操作完成后节点默认将文件关闭。如果文件输入端输入一个引用句柄,或者如果将引用句柄输出连接到另一个函数节点,LabVIEW认为文件仍在使用,直到使用关闭函数将其关闭。
3.获取权限
该选项功能为返回由路径指定文件或目录的所有者、组和权限。获取权限函数的节点图标及端口定义如图7-108所示。
权限:函数执行完成后输出将包含当前文件或目录的权限设置。
所有者:函数执行完成后输出将包含当前文件或目录的所有者设置。
4.获取文件类型和创建者
该选项功能为获取有路径指定的文件的类型和创建者。类型和创建者有4种类型。如果指定文件名后有LabVIEW认可的字符,例如.vi和.llb,那么函数将返回相应的类型和创建者。如果指定文件包含未知的LabVIEW文件类型,函数将在类型和创建者输出端返回????。获取文件类型和创建者函数的节点图标及端口定义如图7-109所示。

图7-108 获取权限函数(https://www.daowen.com)

图7-109 获取文件类型和创建者函数
5.预分配的读取二进制文件
该选项功能为从文件读取二进制数据,并将数据放置在已分配的数组中,不另行分配数据的副本空间。预分配的读取二进制文件的节点图标和端口定义如图7-110所示。
6.设置文件位置
该选项功能为将引用句柄所指定的文件根据模式自(0:起始)移动到偏移量的位置。设置文件位置函数的节点图标和端口定义如图7-111所示。

图7-110 预分配的读取二进制文件

图7-111 设置文件位置函数
7.设置文件大小
该选项功能为将文件结束标记设置为文件起始处到文件结束位置的大小字节,从而设置文件的大小。该函数不可用于LLB中的文件。设置文件大小函数的节点图标和端口定义如图7-112所示。
8.设置权限
该选项功能为设置由路径指定的文件或目录的所有者、组和权限。该函数不可用于LLB中的文件。设置权限函数的节点图标和端口定义如图7-113所示。

图7-112 设置文件大小

图7-113 设置权限
9.设置文件类型和创建者
该选项功能为设置由路径指定的文件类型和创建者。类型和创建者均为含有4个字符的字符串。该函数不可用于LLB中的文件。设置文件类型和创建者函数的节点图标和端口定义如图7-114所示。
10.创建包含递增后缀的文件 VI
如果文件已经存在,创建一个文件并在文件名的末尾添加递增后缀。如果文件不存在,VI则创建文件,但是不在文件名的末尾添加递增的后缀。创建包含递增后缀的文件VI的节点图标和端口定义如图7-115所示。

图7-114 设置文件类型和创建者

图7-115 创建包含递增后缀的文件VI