《虚拟仪器课件.pptx》由会员分享,可在线阅读,更多相关《虚拟仪器课件.pptx(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、会计学1虚拟仪器课件虚拟仪器课件n n作业2:计一个VI,把一个数字(6.00)转换成字符串,并将此字符串与其他字符串(字符串1:the measurement is;字符串2:volts)相连,形成一个输出字符串1:the measurement is 6.0000 volts,同时,显示输出字符串的长度。另外,可以进行密码验证,当密码匹配时,将密码显示出来,并通过一个指示灯来表示密码正确与否。第1页/共32页第六章第六章 文件操作与管文件操作与管理理uu6.1 6.1 基本概念及术语基本概念及术语基本概念及术语基本概念及术语uu6.2 6.2 文件操作文件操作文件操作文件操作(I/O(I/
2、O操作操作操作操作)uu6.3 6.3 文件管理文件管理文件管理文件管理uu6.4 6.4 数据文件存储与读取数据文件存储与读取数据文件存储与读取数据文件存储与读取第2页/共32页6.1 基本概念及术语基本概念及术语uu文件类型:文件类型:文件类型:文件类型:文本文件:可以用字处理软件或电子表格程序来处理或读取文本文件:可以用字处理软件或电子表格程序来处理或读取文本文件:可以用字处理软件或电子表格程序来处理或读取文本文件:可以用字处理软件或电子表格程序来处理或读取数据的文件数据的文件数据的文件数据的文件 1.txt 1.txt 或或或或 .doc.doc类文件,操作对象为字符串;类文件,操作对
3、象为字符串;类文件,操作对象为字符串;类文件,操作对象为字符串;2.2.电子表格文件(电子表格文件(电子表格文件(电子表格文件(SpreadsheetSpreadsheet):):):):.xls.xls类文件操作对象为一维或二维单精度浮点数数组转换而来的字符串类文件操作对象为一维或二维单精度浮点数数组转换而来的字符串类文件操作对象为一维或二维单精度浮点数数组转换而来的字符串类文件操作对象为一维或二维单精度浮点数数组转换而来的字符串二进制整数文件:操作对象是二进制整数文件:操作对象是二进制整数文件:操作对象是二进制整数文件:操作对象是ASCIIASCII码字节流,为二进制字符码字节流,为二进制
4、字符码字节流,为二进制字符码字节流,为二进制字符格式,使用固的字节长度存储数据,存取速度最快,格式最紧格式,使用固的字节长度存储数据,存取速度最快,格式最紧格式,使用固的字节长度存储数据,存取速度最快,格式最紧格式,使用固的字节长度存储数据,存取速度最快,格式最紧凑凑凑凑 (一维或二维整数数组一维或二维整数数组一维或二维整数数组一维或二维整数数组)数据记录文件数据记录文件数据记录文件数据记录文件DatalogDatalog:是记录结构的二进制格式文件。类似:是记录结构的二进制格式文件。类似:是记录结构的二进制格式文件。类似:是记录结构的二进制格式文件。类似于数据库文件,可把不同的数据类型存储到
5、统一个文件记录中。于数据库文件,可把不同的数据类型存储到统一个文件记录中。于数据库文件,可把不同的数据类型存储到统一个文件记录中。于数据库文件,可把不同的数据类型存储到统一个文件记录中。波形数据文件波形数据文件波形数据文件波形数据文件字字字字节节节节流流流流文文文文件件件件第3页/共32页6.1 基本概念及术语基本概念及术语uu路径:路径:路径:路径:labviewlabview用路径控制用路径控制用路径控制用路径控制(Path Control)(Path Control)输入一个路径,用路径指输入一个路径,用路径指输入一个路径,用路径指输入一个路径,用路径指示示示示(Path Indicat
6、or)(Path Indicator)显示一个路径。支持汉字和长文件名显示一个路径。支持汉字和长文件名显示一个路径。支持汉字和长文件名显示一个路径。支持汉字和长文件名备注:备注:备注:备注:文件名:仅指文件名称文件名:仅指文件名称文件名:仅指文件名称文件名:仅指文件名称目录:仅指文件存在的目录位置目录:仅指文件存在的目录位置目录:仅指文件存在的目录位置目录:仅指文件存在的目录位置路径:包含文件所在的目录及文件名路径:包含文件所在的目录及文件名路径:包含文件所在的目录及文件名路径:包含文件所在的目录及文件名uu标识号:包含文件位置、大小、读写权限等所有文件操作标识号:包含文件位置、大小、读写权限
7、等所有文件操作标识号:包含文件位置、大小、读写权限等所有文件操作标识号:包含文件位置、大小、读写权限等所有文件操作 中必须中必须中必须中必须的信息,在对文件进行操作前,通常要先打开文件的标识的信息,在对文件进行操作前,通常要先打开文件的标识的信息,在对文件进行操作前,通常要先打开文件的标识的信息,在对文件进行操作前,通常要先打开文件的标识号号号号,根据文件类型不同分为根据文件类型不同分为根据文件类型不同分为根据文件类型不同分为byte stream file refnum&data log byte stream file refnum&data log file file refnum re
8、fnum uu文件文件文件文件I/OI/O出错管理(出错管理(出错管理(出错管理(error in&error outerror in&error out)和操作流程控制:很多)和操作流程控制:很多)和操作流程控制:很多)和操作流程控制:很多文件文件文件文件I/OI/O节点都有直接传递(节点都有直接传递(节点都有直接传递(节点都有直接传递(flowflowthroughthrough)参数,它将)参数,它将)参数,它将)参数,它将某某某某个输入端口的值原样输出,用以控制程序执行的顺序个输入端口的值原样输出,用以控制程序执行的顺序个输入端口的值原样输出,用以控制程序执行的顺序个输入端口的值原样输
9、出,用以控制程序执行的顺序第4页/共32页6.1 基本概念及术语基本概念及术语uu文件文件文件文件I/OI/O函数类型:函数类型:函数类型:函数类型:Low-level VIsLow-level VIs:低层文件操作函数:低层文件操作函数:低层文件操作函数:低层文件操作函数High-level VIsHigh-level VIs:高层文件操作函数:高层文件操作函数:高层文件操作函数:高层文件操作函数Advanced VIsAdvanced VIs:高级文件操作函数:高级文件操作函数:高级文件操作函数:高级文件操作函数第5页/共32页6.2.1 文件操作低层文文件操作低层文件操作函数件操作函数u
10、u打开打开打开打开/创建创建创建创建/替换、关闭文件替换、关闭文件替换、关闭文件替换、关闭文件uu读文件读文件读文件读文件uu写文件写文件写文件写文件 第6页/共32页n n读文件流程:n n写文件流程打开或创建文件往文件中写入数据关闭文件打开文件从文件中读出数据关闭文件第7页/共32页4个常用的文件操作函数个常用的文件操作函数Open/Create/Replace FileRead FileWrite FileClose File第8页/共32页Open/Create/Replace FileOpen/Create/Replace File函数函数函数函数n n该函数可以用来打开或替换一个已
11、存在的文件,或者创建一个新文该函数可以用来打开或替换一个已存在的文件,或者创建一个新文件件n nfile pathfile path端口用于指定被操作文件的路径,如果不连接该端口,则端口用于指定被操作文件的路径,如果不连接该端口,则VIVI将显示一个文件对话框,可以从中选择文件的路径;将显示一个文件对话框,可以从中选择文件的路径;n nfunctionfunction端口用于选择该函数的操作类型(如打开、新建还是替换);端口用于选择该函数的操作类型(如打开、新建还是替换);n nrefnumrefnum端口(端口(refref为为referencereference的缩写、的缩写、numnum
12、为为numbernumber的缩写)用于传递的缩写)用于传递被操作被操作文件的标识号文件的标识号,即告诉后面的函数要对哪个文件进行操作。,即告诉后面的函数要对哪个文件进行操作。第9页/共32页Close File函数函数n n关闭refnum端口指定的文件,释放文件所占的内存n nPath 输出该文件的路径第10页/共32页错误信息簇错误信息簇error in和和error outn n用于传递错误信息,用于传递错误信息,错误信息簇收集程序错误信息簇收集程序执行过程当中的错误执行过程当中的错误信息,并最终传递给信息,并最终传递给SimpleSimple Error Handler Error
13、Handler函函数来处理。数来处理。n n当一个函数的当一个函数的error inerror in带有错误信息时,该带有错误信息时,该函数不会作任何操作,函数不会作任何操作,而是直接将错误信息而是直接将错误信息传递给传递给error outerror out。n n例:打开一个不存在例:打开一个不存在文件,会产生错误。文件,会产生错误。第11页/共32页Write File函数函数n n该函数可以向该函数可以向refnumrefnum端口指定的文件中写入数据端口指定的文件中写入数据n npos modepos mode和和pos offsetpos offset端口指定开始写入位置:端口指定
14、开始写入位置:pos mode pos mode 取值为取值为02,0-START,1-END,2-02,0-START,1-END,2-CURRENTCURRENT;pos offsetpos offset指定相应的偏移量指定相应的偏移量n ndatadata端口连接将要写入的数据,可以是任意类型,一般端口连接将要写入的数据,可以是任意类型,一般为为字符串或文本簇第12页/共32页例例例例1 1:在一个新文件或已存在的文件中存储数据。:在一个新文件或已存在的文件中存储数据。:在一个新文件或已存在的文件中存储数据。:在一个新文件或已存在的文件中存储数据。分为三步进行:分为三步进行:n n打开或
15、创建文件;打开或创建文件;n n往文件中写入数据;往文件中写入数据;n n关闭文件。关闭文件。n n下面为一个写入文件的例子,将字符串下面为一个写入文件的例子,将字符串“abcdefgabcdefg”写入写入文件文件d:test1.txtd:test1.txt中。中。思考:若要求下次程序执行都将此字符串写在原来字符思考:若要求下次程序执行都将此字符串写在原来字符串后面怎么办?串后面怎么办?第13页/共32页Read File函数函数n n该函数可以从该函数可以从refnumrefnum端口指定的文件中读取数据(文本字符)端口指定的文件中读取数据(文本字符)n ncountcount端口指定读取
16、的字节数,当端口指定读取的字节数,当line modeline mode为为TrueTrue,countcount为为0 0则节点读则节点读取数据直到遇到行结束符或文件结束符取数据直到遇到行结束符或文件结束符n npos modepos mode和和pos offsetpos offset端口指定读取字符的起始位置端口指定读取字符的起始位置 pos mode pos mode 取值为取值为02,0-START,1-END,2-CURRENT02,0-START,1-END,2-CURRENTn ndatadata端口把读取的字符串作为一个字符数组输出端口把读取的字符串作为一个字符数组输出n n
17、Dup refnum Dup refnum 为复制的文件号为复制的文件号 第14页/共32页例例例例2 2:从文件中读取数据:从文件中读取数据:从文件中读取数据:从文件中读取数据n n打开一个已存在的文件,打开一个已存在的文件,n n用用Read FileRead File函数读取文件内容,函数读取文件内容,同时,必须在count端口指定要读取的字节数n n然后关闭文件。然后关闭文件。n n下面为一个读取文件的例子。此例中下面为一个读取文件的例子。此例中file sizefile size端口输出为整个文件的端口输出为整个文件的长度,即读取的内容为全部字符长度,即读取的内容为全部字符 第15页
18、/共32页练习练习n n练习6-1:设计一个VI,向文件中(路径为:D:练习61.txt)写入字符数据,即将一个字符信息、一个数字和一个单位标识符连在一起写入一个文件。n n练习6-2:设计一个VI,从文件中读取数据。当输入的密码与指定密码相匹配时,对上个练习中所创建的文件进行读操作,并在字符串指示器中显示所读取的信息。第16页/共32页6.2.2 文件操作高层文文件操作高层文件操作函数件操作函数uu读读读读/写电子表格文件(写电子表格文件(写电子表格文件(写电子表格文件(Read From/Write To Read From/Write To Spreadsheet FileSpreads
19、heet File)uu读写字符串文件(读写字符串文件(读写字符串文件(读写字符串文件(Write/Read Characters Write/Read Characters To/From File To/From File)uu二进制文件操作函数二进制文件操作函数二进制文件操作函数二进制文件操作函数特点:特点:特点:特点:每次调用,都执行打开文件、写每次调用,都执行打开文件、写每次调用,都执行打开文件、写每次调用,都执行打开文件、写/读文读文读文读文件、件、件、件、关闭文件,虽然简化编程,但单连续读写文关闭文件,虽然简化编程,但单连续读写文关闭文件,虽然简化编程,但单连续读写文关闭文件,虽
20、然简化编程,但单连续读写文件件件件数据时,降低效率数据时,降低效率数据时,降低效率数据时,降低效率 第17页/共32页6.2.3 电子表格文件的文件操作电子表格文件的文件操作方法方法1 1:采用文本文件方式写和读:采用文本文件方式写和读n n电子表格是格式化的文本文件,在电子表格中,用制表符隔开各列,用行结束符隔开各行。n n可以用Concatenate String函数在每项之间插入一个制表符,在每行最后一项插入一个行结束符,以生成电子表格字符串。第18页/共32页例例例例2 2:产生:产生:产生:产生5 5个随机数,并和序号一起保存,格式为电子表单。个随机数,并和序号一起保存,格式为电子表
21、单。个随机数,并和序号一起保存,格式为电子表单。个随机数,并和序号一起保存,格式为电子表单。使用电子表格软件(如Excel)打开生成的文本文件首先把循环计数值和随机数转化成字符串,并与制表符和行结束符连接成一个电子表格格式的字符串第19页/共32页方法方法方法方法2 2 采样专门电子表单文件函数采样专门电子表单文件函数采样专门电子表单文件函数采样专门电子表单文件函数n nWriteWrite toto SpreadsheetSpreadsheet FileFile函数。该函数可以把函数。该函数可以把一个单精度的二维或一维数字型数一个单精度的二维或一维数字型数组转换成文本字符串组转换成文本字符串
22、,并将此字符串写入一个新文件或添加到一个已存在的,并将此字符串写入一个新文件或添加到一个已存在的文件中,写入之后关闭文件,该文件为电子表格文件。文件中,写入之后关闭文件,该文件为电子表格文件。第20页/共32页Read From Spreadsheet File函数函数n n该函数可以打开一个电子表格文件,从指定位置开始,读出指定数目的行或列,并将此该函数可以打开一个电子表格文件,从指定位置开始,读出指定数目的行或列,并将此字符字符数据转换成一个二维的单精度数字数组数据转换成一个二维的单精度数字数组,读完后关闭文件。,读完后关闭文件。n n可以用此函数去读一个以文本格式保存的电子表格文件可以用
23、此函数去读一个以文本格式保存的电子表格文件 第21页/共32页n nWriteWrite CharactersCharacters toto FileFile函数。该函数可以把一个字符串写函数。该函数可以把一个字符串写入一个新文件或添加到一个已存在的文件中。入一个新文件或添加到一个已存在的文件中。在写入文在写入文件之前,打开或创建文件;写入之后,关闭该文件。件之前,打开或创建文件;写入之后,关闭该文件。n nReadRead CharactersCharacters FromFrom FileFile函数。该函数可以打开一个文件,函数。该函数可以打开一个文件,并从指定位置开始读取指定数目的字符
24、,读完后输出字并从指定位置开始读取指定数目的字符,读完后输出字符串并关闭文件符串并关闭文件 第22页/共32页n nReadRead LinesLines FromFrom FileFile函数。该函数可以打开一个函数。该函数可以打开一个ASCIIASCII格式的文件(纯文本文格式的文件(纯文本文件),从指定的位置开始,读取指定数目的行,并转换成一个字符串输出。件),从指定的位置开始,读取指定数目的行,并转换成一个字符串输出。读完后关闭文件读完后关闭文件 。第23页/共32页Binary File VIs子模板子模板n nBinary File VIsBinary File VIs是高层文件函
25、数的一个子模板是高层文件函数的一个子模板,它提供的函它提供的函数能以二进制格式对文件进行读数能以二进制格式对文件进行读/写操作,数据可以是整写操作,数据可以是整型的(型的(I16I16)或单精度浮点型的()或单精度浮点型的(SGLSGL)。)。n n以二进制格式对文件进行读以二进制格式对文件进行读/写操作,可以提高访问速度写操作,可以提高访问速度和节省磁盘存储空间。和节省磁盘存储空间。n nRead From I16 FileRead From I16 Filen nWrite To I16 FileWrite To I16 Filen nRead From SGL File Read Fro
26、m SGL File n nWrite To SGL FileWrite To SGL File第24页/共32页习题习题习题习题6-3:6-3:设计一个设计一个设计一个设计一个VIVI,产生一个随机数二维数组(,产生一个随机数二维数组(,产生一个随机数二维数组(,产生一个随机数二维数组(100100行行行行3 3 列),把此数据写入到电子表格文件列),把此数据写入到电子表格文件列),把此数据写入到电子表格文件列),把此数据写入到电子表格文件 第25页/共32页习题习题习题习题6-3:6-3:设计一个设计一个设计一个设计一个VIVI,产生一个随机数二维数组(,产生一个随机数二维数组(,产生一个
27、随机数二维数组(,产生一个随机数二维数组(100100行行行行3 3 列),把此数据写入到电子表格文件列),把此数据写入到电子表格文件列),把此数据写入到电子表格文件列),把此数据写入到电子表格文件 第26页/共32页6.3 文件管理文件管理uu文件的文件的文件的文件的管理:新建、打开、删除、改名、存盘、移动、复制管理:新建、打开、删除、改名、存盘、移动、复制(Advanced File I/OAdvanced File I/O)uu获取文件、目录信息获取文件、目录信息获取文件、目录信息获取文件、目录信息返回文件、目录信息(返回文件、目录信息(返回文件、目录信息(返回文件、目录信息(File/
28、Directory Info.File/Directory Info.)文件列表(文件列表(文件列表(文件列表(ListList)uu路径路径路径路径操作:当前目录、默认目录、库目录、空目录、指定路操作:当前目录、默认目录、库目录、空目录、指定路径等径等uu目录操作目录操作目录操作目录操作(文件夹):新建、改名、删除、列表(文件夹):新建、改名、删除、列表第27页/共32页6.4 数据存储与读取数据存储与读取读写文件流程与文件操作流程一致读写文件流程与文件操作流程一致uu读文件流程:不同之处为读取后要转为数组读文件流程:不同之处为读取后要转为数组uu写文件流程:不同之处为写入前要将数组转为字写
29、文件流程:不同之处为写入前要将数组转为字符串符串打开或创建文件往文件中写入数据关闭文件打开文件从文件中读出数据关闭文件第28页/共32页6.4 例题例题n n例8.4.1 写入ASCII文件第29页/共32页例题:例题:n n练习练习6-36-3:设计一个:设计一个VIVI来测量温度(保留来测量温度(保留2 2位小数),每位小数),每隔隔0.250.25秒测一次,共测定秒测一次,共测定1010秒。在数据采集过程中,秒。在数据采集过程中,VIVI将将在波形在波形ChartChart上实时地显示测量结果。采集过程结束后,上实时地显示测量结果。采集过程结束后,在在GraphGraph上画出温度数据曲线上画出温度数据曲线,并且把测量的温度值以文并且把测量的温度值以文件的形式存盘,件的形式存盘,n n使用记事本打开文件检查结果是否正确。使用记事本打开文件检查结果是否正确。n n存盘格式为:存盘格式为:点数点数 时间时间(S)温度值温度值(度度)1 0.25 78.56 2 0.50 85.32 .第30页/共32页解答:解答:解答:解答:第31页/共32页
限制150内