虚拟仪器VI讲义_第七章_字符串与文件I∕O_104页.ppt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 虚拟仪器 VI 讲义 第七 字符串 文件 O_104
- 资源描述:
-
第七章 字符串与文件,I/O,7.1,字符串控件与节点,7.2,文件,I/O,第七章 字符串与文件,I/O,7.1,字符串控件与节点,字符串是,ASCII,字符的集合。如同其他语言一样,,LabVIEW,也提供了各种处理字符串的功能,,7.1.1,字符串控件,1,.,创建字符串对象,可以在,Controls,String,&Path,中创建如下字符串控制对象和显示对象。,还可以使用操作工具或者标签工具输入或者改变字符串控制对象中的文本。用移位工具拖曳字符串控制对象和显示对象的边角可以增大它们的面积。,2,.,字符串控件菜单,在前面板字符串对象的右键弹出菜单中,可以调整字符串控件的外观和显示模式。,(,1,)显示模式 在字符串设置菜单中,共有,4,中模式:,a)Normal Display,是控件的缺省模式,在该模式下,显示所有可显示的输入字符。有些字符在该模式下是不可显示的,如制表符、,ESC,等,b),“,”,Codes Display:,控制码显示 在该模式下,把,“,”,及其后接的字符理解为格式化字符。这种模式可显示一些不可见字符。具体格式及含义见下表:,格式,含 义,00-FF,接两位十六进制整数(大写),显示该值的,ASCII,字符,b,退格符,(,BackSpace,ASCII,BS,相当于,08),f,进格符,(,Foemfeed,ASCII,FF,相当于,0C),n,换行符,(,Linefeed,ASCII,LF,相当于,0A),r,回车符,(Return,ASCII CR,相当于,0D),t,制表符,(,Table,ASCII,HT,相当于,09),s,空格符,(Space,相当于,20),反斜线,(Backslash,ASCII,相当于,5C),控制码模式,正常模式,ASCII BF,FORE,ASCII B,efore,b(,退格,),efore,非法字符,忽略,“,”,r(,回车,),(,ASCII 3F,)?,r=r(,反斜线,),c),PassWord,Display:,口令显示 在该模式下,键入的字符以,“,*,”,显示,主要用于输入口令或密码。拷贝或剪切时,出现在剪切板上的也是,“,*,”,。,d)Hex Display:,十六进制显示 在该模式下,显示输入字符对应的十六进制,ASCII,码。,输入正常模式 输出十六进制模式,输入十六进制模式 输出正常模式,(,2,),Limit to single Line,在该选项有效后,可以防止输入回车符。因为在,VI,通信时,回车符意味着通信结束。注意在控制码模式下,,r,仍然有效。,(,3,),Update Value While Typing,该选项有效后,输入或更改每一个字符的结果都会同步地传递到端口上,即此时是逐个字符更新到程序端口上的。缺省情况下(此项未选中),控件只在字符串输入结束后(回车),才会把结果传递给其它端口。,3,.,字符串控件的属性设置,通过在框图中设置节点的属性,可以改变字符串控件的显示外观,这样可在程序中动态调整字符串控件的属性。,(,1,)文字大小(,Text Size,)用来设置字符串控件的尺寸。其输入为含两个无符号整数的簇,分别设置字符串控件的宽和高。也可以由,Width,和,Height,两个节点来完成。,(,2,)滚动位置,(Scroll Position),移动文本,其输入为无符号整数,N,。使文本的第,N,行处于字符串控件的顶端。动态改变节点的输入,可以使文本滚动显示。,(,3,)选择字符,(Selection),用来选择一部分字符。其输入为含两个无符号整数的簇,分别设置字符串开始和结束位置。,(,4,)显示风格,(Display Style),用来选择显示模式。输入值,0,、,1,、,2,、,3,分别表示正常显示、控制码显示、口令显和十六进制码显示。,(,5,)滚动条,(Scroll Bar),确定是否显示滚动条。,(,6,)文字颜色,(Display Style),用来设置字符串显示颜色。其输入为含两个无符号整数的簇,分别为前景颜色和背景颜色。,7.1.3,字符串节点,1,.,基本字符串操作节点,(1),求字符串长度节点(,String Length,)返回输入字符串的长度。输入可以是字符串(单行或多行),可以是字符串数组,也可以是字符串簇。注意:输入字符串长度包括换行符。例,8.1.1,输入一个两行字符串,求其长度。,(2),字符串合并(,Concatenate String,)把输入的多个字符串合并成一个字符串。输入可以单一字符串、字符串数组或是字符串簇。注意:输入字符串长度包括换行符。例,7.1.3,输入,3,个字符串,将其合并为一个字符串。,(3),子字符串提取(,String Subset,)从输入的字符串的,Offset(0),位置开始提取规定长度,Length,的字符串。当,Length=0,时,不操作。节点图标及接口:,(4),格式化的时间字符串,(,Format Date/Time String,)按给定格式输出时间,包括年月日时分秒和星期。节点图标及接口:,时间输出格式表如下:,格式,含 义,格式,含 义,%d,显示日期,%a,显示星期,%m,显示月份,%H,显示,24,小时制的小时,%y,显示两位数的年份,%I,显示,12,小时制的小时,%Y,显示四位数的年份,%M,显示时间的分,%x,按本国习惯显示日期,%S,显示时间的秒,%X,按本国习惯显示时间,%P,显示,AM/PM,标志,%c,按本国习惯显示日期,/,时间,例,7.1.4,(5),字符的大小写转换,(,To Upper,Case,To,Lower Case,),To Upper Case,节点把输入字符串中的小写字母转换为大写字母;,To Lower Case,节点把输入字符串中的大写字母转换为小写字母。节点图标及接口:,(6),子字符串的替换,(Replace Substring),能实现字符串的插入、删除、替换和抽取,节点图标及接口:,(7),字符串的查找与替换,(Search and Replace String),能实现字符串的查找与替换,节点图标及接口:,2,.,指令、参数整合节点,(1),从多行字符串中提取,1,行(,Pick Line,)在输入的多行字符串中,multi-line string,中,提取一个指定行(,line index,),并把这行加到字符串,string,后,组成一个新的字符串输出。节点图标及接口:,(2),从字符串数组中提取,1,行,(,Index String Array,),把字符串数组,string array,中指定单元,(index),的字符串提取,并把这行加到字符串,string,后,组成一个新的字符串输出。节点图标及接口:,(3),条件选择字符串并扩展,(,Append True/False String),如果,selector,输入为,True,把,true string,字符串加到字符串,string,后;如果,selector,输入为,False,把,false string,字符串加到字符串,string,后,组成一个新的字符串输出。节点图标及接口:,(4),多字符串的格式化整合,(Format into,String),该节点把多个输入与,initial,合并成一个字符串输出。输入可以是字符串,也可以是数值。输出的格式由格式化字符串决定。节点图标及接口:,格式化字符串含义表:,格式,含 义,%f,十进制浮点数,%d,十进制整数,%x,十六进制整数,%o,八进制整数,%s,二进制整数,%A-,Za-z,字符串,%A-,Za-z,由英文字母组成的字符串,abcd,由非英文字母组成的字符串,%,百分号,%,:%?:,十进制浮点数的小数点的形式,不同格式化字符串输入时的输出,Format String,Argument(s,),Resulting String,Score=%2d%,87,Score=87%,Level=n-7.2eV,0.03642,Level=3.642e-2V,Name:%s,%s,Smith,Jhon,Name=,Smith,Jhone,Temp:%05.1f%s,93.793,Fahrenheit,Temp:096.8 Fahrenheit,String:%10.5s,Hello,world,_Hello,3,.,表达式分析、控制命令节点,(1),表达式分析,(,Scan Form String,)根据格式化字符串,format string,的要求来分析输入字符串,并将其直接转化为相应的类型。在搜索时遇到第一个不匹配的类型时,停止搜索,余下的字符在,remaining string,中输出。节点图标及接口:,不同格式化字符串输入时的输出,输入字符串,格式,输出,剩余字符串,abc,xyz,12.3e2 7200,%s,%s%f%2d,Abc,Xyz,12.3e2,72,00,Q+1.27e-3tail,Q%ft,1.27e-3,ail,0123456789,%3d%3d,12,345,6789,Set3,46,%,;%,s%f,Set,3.46,Set49.4.2,Set%d,49,.4.2,(2),子字符串条件查找,(,Match Pattern,)根据输入,regular expression,定义的条件,从,offset,位置开始检查输入字符串是否存在满足该条件的子字符串。如果存在,则在,match substring,中返回该子字符串,,offset past,macth,返回,after substring,后第一个字符的位置。否则,offset past,macth,返回,1,。,regular expression,可以使字符串,也可是通配符。节点图标及接口:,(3),特征字符串查找,(,Scan String For Token,)节点图标及接口:,这个节点用于分析查找输入字符串中的一些特征字符串,,可用来分析运算表达式字符串中的数字、变量、运算符等。输入输出端口含义:,operators,:字符串数组输入,用来列举特征字符串。,delimiters:,字符串数组输入,用来列举分隔符,在两个分隔符之间的子字符串就是一个特征,子字符串。,Delimiters,的缺省值为,%,s,%t,%r,%n,(,空格、制表符、换行、回车,),。,Offset past token:,上一个特征子字符串结束的位置,即下一个特征子字符串的起始位置。,token string:,输出查找到的特征子字符串。,token index:,如果找到的特征子字符串是,operators,中列举的,则在,token index,中输出子字符串在,operators,数组中的位置,否则输出,1,。若搜索到字符串尾,则输出,2,。,Allow empty tokens:if true,,在输入中有两个相临的分隔符时,将在,token string,中返回一个空值。,use cached,delim/oper,data?:if true,将有一个缓冲区来保存,delim,和,oper,中的数据。分析开始时,保证该值为,false,。,例,7.1.7 Scan String For Token,节点用法。,4,.,电子表格字符串操作节点,(1),数组到电子表格,(,Array to spreadsheet String),电子表格是用文本方式记录数据的。它把数据分成很多行,行与行之间用换行符分隔,同一行的不同数据单元用制表符分隔。该节点用于把数组中的数值或字符串用电子表格的形式表示。节点图标及接口:,例,7.1.8,把一个浮点数的数组转换成电子表格。,(2),电子表格到数组,(,spreadsheet String,to,Array),该节点与,spreadsheet String to Array,节点的功能相反,它把一个电子表格转化成一个数组。数组类型在,array type,中定义,缺省为二维的浮点数数组。节点图标及接口:,7.2,文件,I/O,7.2.1,基本概念及术语,1,.,路径及路径控件,(Path Control and Indictor),文件名:文件的名称;目录:指文件存在的位置;路径:保存文件所在位置的目录和文件名。,LabVIEW,用路径输入控件输入一个路径;用路径输出控件返回一个路径。路径名的输入与字符串完全相同,路径就是一种符合一定格式的字符串。路径输入输出控件面板及端口如下:,2,.,LabVIEW,文件的分类,LabVIEW,支持,4,种格式的文件,:,文本文件、二进制文件、块记录文件、波形数据文件。,(1),文本文件 这种格式的文件是,ASCII,码字节流,可以用文字处理软件或电子表格程序来读取或处理数据。缺点是占用的磁盘空间大,存取速度慢。如对一个浮点数,123.4567,,如按单精度浮点数存储只占用,4,个字节;但按,ASCII,码字符串存储,需占用,9,个字节。由于不同数据占用不同字节数,因此不能随机访问数据文件。,(2),二进制文件 是速度最快,格式最紧凑的数据存储方式。可以对二进制文件进行随机访问,但需知道数据类型。,(3),块记录文件 也是二进制文件格式文件。它的基本数据类型为记录块,(Record),,一个记录中可以有几种不同的数据类型。同一文件的数据块必须有相同的数据结构。块记录文件的存储、添加、删除等操作必须以记录为单位。,(4),波形数据文件 这种文件保护了波形数据特有的一些信息,如采样开始时间、采样间隔等,3.,参考数,(,RefNum,),及参考数控件 参考数包含了特定对象的很多信息,是文件操作和,I/O,操作的基础。,LabVIEW,在对一个对象进行,I/O,操作前,通常先打开这个对象的一个参考数。对文件参考数,包含了文件的位置、大小、读写权限等所有在文件操作中必需的信息;对,VXI,仪器的参考数,包含了仪器的接口形式、地址及其它信息;对网络连接参考数,包含了接连的地址、协议等。在建立了一个,I/O,对象的参考数以后,后续对该,I/O,的操作都针对这个参考数进行。一次,I/O,完成后,应释放这个参考数。,例,7.2.1,打开一个文件,从中读取数据,然后关闭文件。,在,Controls,RefNum,子模板中,列出了所有参考数控件。本章主要介绍文件参考数的应用。当打开一个文件时,,LabVIEW,将赋给其一个文件参考数,其后所有都可通过该参考数进行。当文件关闭时,释放参考数。参考数是随机分配的,每次打开都不同。,4.,文件,I/O,的错误处理 在,LabVIEW,中,大多数文件,I/O,节点有一个,error in,和,error out,端口,它们的数据类型为簇。当几个,I/O,节点连接在一起,如果一个节点出错,则该节点的,error out,将返回的错误信息传递到下一个节点的,error in,,此时接收到错误信息的节点不执行操作,而把错误信息通过,error out,传递到下一个节点的,error in,,直到最后一个节点。这样就可在最后一个节点的,error out,端口连接出错处理,VI,,避免错误扩散和无用操作,5.,文件,I/O,操作中的流控制 在,LabVIEW,中,大多数文件,I/O,节点有一个所谓的流入流出,(flow-through),端口,该端口只是简单的把一个输入参数原样输出。把一个节点的,flow-through,输出连接到下一个节点,flow-through,输入,此时,只有当前节点执行完后才能执行下一个节点,从而实现顺序控制。,error in,和,error out,就是一对,flow-through,端口,它们可以用来控制程序的执行顺序。,7.2.2,文件,I/O,节点的组织,LabVIEW,提供了一组文件,I/O,操作节点集,用于文件的创立、读、写,删除、移动及文件拷贝,查看文件及目录列表等。文件操作主要包含,3,个步骤,:,(1),创建新文件或打开一个旧文件;,(2),对文件进行读写操作;,(3),关闭文件。,LabVIEW,的文件操作节点如下:,LabVIEW,提供文件,I/O,操作函数大体分为,3,个层次,:即高层的文件操作;低层的文件操作;和高级文件操作。,(1),高层文件操作 高层文件操作,VI,建立在低层文件,VI,之上,与错误检查和处理相结合,执行打开或创建文件,读或写文件,关闭文件的全部过程。这一组,VI,包括:,写电子表格文件,VI(Write,to Spreadsheet File),。,读电子表格文件,VI(Read,From Spreadsheet File),。,写字符串文件,VI(Write,Characters to File),。,读字符串文件,VI(Read,Characters From File),。,按行读字符串文件,VI(Read,Lines from File),。,以下,VI,位于二进制文件操作子模板:,读,16,位整型数文件,VI(Read,From I16 File),。,写,16,位整型数文件,VI(Write,to I16 File),。,读单精度浮点数文件,VI(Read,From SGL File),。,写单精度浮点数文件,VI(Write,to SGL File),。,(2),常用的低层文件操作函数与,VI,打开,/,创建,/,替换文件,VI(Open/Creat/Replace,File),。,读文件函数,(Read File),。,写文件函数,(Write File),。,关闭文件函数,(Close File),。,(3),可能用到的高级文件操作,打开文件函数,(Open File),。,创建新文件函数,(New File),。,访问权限设置函数,(Access Rights),。,移动文件或路径函数,(Move),。,复制文件或路径函数,(Copy),。,删除文件或路径函数,(Delete),。,创建新路径函数,(New Directory),。,(4),波形操作文件,VI,写波形文件,(Write Waveforms to File),。,读波形文件,(Read Waveforms From File),。,输出电子表格格式文件,(Export Waveforms to Spreadsheet File),。,7.2.3,文件,I/O,节点介绍,1.,高层文件操作节点,(1),写电子表格文件,(Write to Spreadsheet File),该节点把一个二维或一维单精度浮点数数组写到一个电子表格文件中。节点图标及连接端口如下图:,如果文件存在,则既可以把数据追加到该文件,也可以覆盖原有的数据;如果文件不存在,则创建新文件。此节点在读取数据前打开文件,读取操作完成后关闭该文件。,(2),读电子表格文件,(Read From Spreadsheet File),从一个电子表格文件中读取一定数量的数据,并把这些数值字符串转换成单精度浮点数后,从一个二维数组中返回。节点图标及连接端口如下图:,注意:电子表格文件的所有字符串必须由有效的数值字符组成。此节点在读取数据前打开文件,读取操作完成后关闭该文件。,(3),写字符串文件,(Write Characters to File),把字符串写入一个新文件中或追加到一个已经存在的文件尾。在写字符串前,打开或创建文件;操作完成后自动关闭该文件。节点图标及连接端口如下图:,(4),字符读取节点,(Read Characters From File),从一个文本文件中读取字符,操作完成后自动关闭该文件。节点图标及连接端口如下图:,(5),按行读取节点,(File I/O,Read Lines From File),从一个流文件中读取一定行数的字符串。操作完成后自动关闭该文件。节点图标及连接端口如下图:,(6),读整数节点,(Read From I16 File),从一个流文件中读取一批,16,位整数数据,并把它们通过一个一维或二维的数据数组返回。操作完成后自动关闭该文件。节点图标及连接端口如下图:,(7),写整数文件,(,Write to,I16 File),该节点把一个一维或二维的整数数组中的数据写入到文件。新的数据可以追加到已有文件尾,也可以覆盖原有的数据;如果输入的文件不存在,则创建一个新文件。操作完成后自动关闭该文件。节点图标及连接端口如下图:,(8),读浮点数节点,(Read From SGL File),从一个流文件中读取指定数量的浮点数,并把它们通过一个一维或二维的数据数组返回。操作完成后自动关闭该文件。节点图标及连接端口如下图:,(9),写浮点数节点,(,Write to,SGL File),把一个一维或二维的浮点数数组中的数据写入一个流文件。新的数据可以追加到已有文件尾,也可以覆盖原有的数据;如果输入的文件不存在,则创建一个新文件。操作完成后自动关闭该文件。节点图标及连接端口如下图:,2.,常用低层文件操作节点,(1),打开,/,创建,/,覆盖文件,(Open/,Creat,/Replace File),打开、覆盖一个已经存在的文件或创建一个新文件。节点图标及连接端口如下图:,该节点其实是通过调用,File,dialog,Open,File,和,New File,三各节点来实现其功能的。节点功能由,function,的值来确定。,0,:打开一个已经存在的文件;,1,:打开或创建新文件;,2,:创建新文件或覆盖旧文件;,3,:创建新文件。,(2),读文件,(Read File),从打开的文件中读数据,节点图标及连接端口如下图:,如果,refnum,代表的是一个已经打开的流文件,则由,byte stream type,定义其数据结构。,Line mode,与,count,一起决定读取的数据量。如果,refnum,代表的是一个已经打开的块记录文件,则,Line mode,和,byte stream type,均无效,,count,决定要求读取的数据记录的个数。,(3),写文件,(Write File),向打开的文件中写数据,节点图标及连接端口如下图:,如果,refnum,代表的是一个流文件,则该节点写数据到文件中的位置由,pos made,和,pos offset,决定。如果,refnum,代表的是一个块记录文件,则该节点把数据当作一个记录块写入该文件。写操作总是在文件尾开始。此时,,Covert,eol,、,header,、,pos mode,及,pos offset,等参数无效,(4),关闭文件,(Close File),关闭参考数,RefNum,所代表的文件,节点图标及连接端口如下图:,注意:该节点不管,error in,是否有错误,都会执行关闭文件的操作,所以必须从,error out,中判断文件关闭操作是否成功。,2.,常用高级文件操作节点,(1),打开文件,(Open File),打开一个文件,节点图标及连接端口如下图:,datalog,type,:有连线时,打开的是记录文件;反之则默认为流文件。,open mode(0),:打开文件的模式,若,0,,表示可以对打开的文件进行读写操作;若,1,,只能对打开的文件进行读操作而不能进行修改。,(2),创建新文件,(,New File,),创建一个文件,并使之处于打开状态。节点图标及连接端口如下图:,datalog,type,:可以连接如何数据类型。有连线时,打开的是记录文件;反之则默认为流文件。,(3),文件指针定位节点,(,Seek,),LabVIEW,的,Seek,节点可以用来移动文件针,节点图标及连接端口如下图:,指针移动位置由,pos made,和,pos offset,决定。当,pos made,0,,文件指针为文件开始指针,(0),与,pos offset,的值相加的结果;当,pos made,1,,文件指针为文件尾指针,(,即文件长度,),与,pos offset,的值相加的结果;当,pos made,2,,文件指针为当前指针与,pos offset,的值相加的结果。,(4),文件截断,(,EOF,),在流文件的指定位置设置一个文件结束符,EOF,,节点图标及连接端口如下图:,文件截断位置由,pos made,和,pos offset,决定(参见,Seek,节点)。操作完成后,文件指针位于文件尾,,offset,返回其真值,该值即文件长度。注意:不能用该节点截断一个块记录文件。,(5),文件对话框,(,File Dialog),该节点用来提供通用文件对话框,用于输入、选择所要操作的文件或目录。该节点图标及连接端口如下图:,输入参数如下:,prompt,:定义对话框的标题栏;,Start Path,:定义对话框的初始显示路径。如果输入的值尾,,则其值为对话框最近一次使用的路径。,default name,:定义对话框中的初始文件名;,pattern,:定义通配符来过虑对话框中需显示的文件类型。,Datlog,type,:可以是任何类型数据。当有连线时,对话框只能显示具有该类型的记录文件。,Select mode,:用来限制用户选择文件或目录的类型。其端口参数含义如下:,0,:选择一个已经存在的文件;,1,:定义一个新文件;,2,:选择一个已经存在的文件或定义一个新文件。这个值是该参数的缺省值。,3,:仅限选择一个目录;,4,:定义一个新的目录;,5,:选择一个已存在的目录或定义一个新目录;,6,:选择一个,LabVIEW,库,(LLB),中存在的文件;,7,:在一个,LabVIEW,库,(LLB),中,定义一个新的文件;,8,:在,LabVIEW,库,(LLB),中选择一个已存在的文件或定义一个新的文件。,(6),删除文件(,del,),删除由,path,输入的文件或目录,节点图标及连接端口如下图:,(7),移动文件(,Move,),把一个文件从源位置移动到目标位置。节点图标及连接端口如下图:,(8),复制文件(,Copy,),把文件从源位置复制一份到目标位置。节点图标及连接端口如下图:,(9),文件,/,目录信息(,File/Dir Info),返回由,path,输入的文件或目录属性,如大小、最后修改时间等。节点图标及连接端口如下图:,(10),创建一个路径,(,Build a path,),在已有路径,base path,后添加字符串,构成新的路径名。节点图标及连接端口如下图:,(11),分离一个路径,(,Strip a path,),把输入路径,path,从最后一个反斜线处分割成一条路径和一个文件名。节点图标及连接端口如下图:,(12),创建一个目录,(,Build a path,),创建由,directory path,输入的目录。节点图标及连接端口如下图:,(13),字符串与文件路径的相互转换,在,string,string,/Array/Path Conversion,子模板以及,File I/,O,Advance,File Functions,Path to Array of string,子模板下,提供了,4,个路径与字符串相互转换的节点。,a)Path to Array of Strings,节点 节点图标及连接端口如下图:,b)Array of Strings to Path,节点图标及连接端口如下图:,c)Path to Strings,节点 节点图标及连接端口如下图:,d)Strings to Path,节点图标及连接端口如下图:,7.2.4,文本文件的输入输出,1,.,使用高层,VI,保存文本文件,从上程序可以看出,保存文本文件首先要将数据转换位字符串。格式由,format string,设置为,%.3f,。,运行该程序后,用记事本打开,E:,mydat.txt,文件,可以看见一些带,3,位小数的数字字符,每个字符串之间隔,2,个空格。,由于,Write Characters to File,是一个高层的文件操作,VI,,每次调用它都要执行打开文件、写文件、关闭文件的操作,如果需要连续写数据,该方法的效率很低。使用低层文件操作函数完成同样的任务,可以大大提高效率。,2.,使用低层,VI,保存文本文件,在该程序执行过程中,文本一直处于打开状态,避免了每次写数据时都要打开文件和关闭文件,提供了程序执行的效率。,3.,读取文本文件中的数据,7.2.5,电子表格文件的输入输出,1,.,写电子表格格式的文件,由序号,i,和一个随机数构成表格,输入到,Write to Spreadsheet File,的,1D Data,端口 。,运行该程序后,在,E,盘生成,c1.xlsd,的电子表格文件。用,Excel,打开这个文件,可以看两列数据:一列是序号,另一列是随机数。,Write to Spreadsheet File,是一个高层的文件操作,VI,,效率很低。可以使用如下低层文件操作函数来提高操作效率。,为了与,Excel,表格一致,用制表符做列标记,用行尾符号做行标记。,2,.,读电子表格格式的文件,7.2.6,二进制文件的输入输出,1,.,使用高层,VI,保存二进制文件,如果需要保存其它类型的二进制数据文件,或想得到更高的存储效率,就要用低层函数和,VI,。,2,.,使用低层,VI,保存二进制文件,与文本文件保存不同点:文本文件,Write VI,中输入为字符串,,Write VI,就写一个文本文件。本例中输入一个双精度浮点数组,,Write VI,就写一个二进制文件。,3,.,读取二进制文件,低层函数读取二进制文件,3,.,二维数组二进制文件的输入输出,在,Write File,函数的头文件参数,header,输入,T,值,这样在,Write,函数在写文件时自动加上文件行列信息。共,8,字节。,读取二维二进制数据文件。这里,Read,函数的数据类型参数,byte stream type,输入了一个空的双精度二维数组。返回值,data,是一个与存储数据完全相同的二维数组。,7.2.7,数据记录文件的输入输出,1,.,写数据记录文件,数据记录文件类似于数据库文件,每个记录实际就是一个簇。如上图,该簇由一个字符串,一个数值和一个数组构成。,写数据记录文件流程如下:程序调用了高级文件操作函数,New File,,用它创建一个新文件。当程序中为该函数的数据记录类型参数,dadtlog,type,连接一个值的时候,它就产生一个数据记录文件。数据记录文件中的每个记录的数据类型都与,dadtlog,type,的数据类型一致。,2,.,读数据记录文件,程序调用了高级文件操作函数,Open File,,用它来打开一个文件。当程序中为该函数的数据记录类型参数,dadtlog,type,连接一个值的时候,它就打开一个数据记录文件。如果,dadtlog,type,参数的数据类型与数据记录文件中的数据类型不匹配,程序运行后不能读出数据,并返回类型冲突的出错信息。,读取的数据记录如下:,7.2.8,波形文件的输入输出,波形文件实际也是一种数据记录文件。一个波形包括采样开始时间,t0,,采样时间间隔,dt,,和采样数据(一个数组)三部分信息。,1,.,写波形文件,写波形文件程序前面板:,2,.,读波形文件 读波形文件程序框图:,读波形文件程序前面板:,实验六 字符串与文件,I/O,1.,创建一个字符串显示件,程序运行后显示当前系统日前、时间和自己的班级、姓名。,2.,将范围,0,10,的,5,个随机数转换为一个字符串显示在前面板上。要求保留,2,位小数,每个数之间用逗号分隔。,3.,产生若干周期的正弦波数据,以当前系统日前和自己姓名位文件名,分别存储为文本文件、二进制文件和电子表文件。然后将存储的数据文件读出来并显示在前面板上。,4.,将一组随机信号数据加上时间标记存储为数据记录文件,然后将存储的数据读出并显示在前面板上。,展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




虚拟仪器VI讲义_第七章_字符串与文件I∕O_104页.ppt



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/13126092.html