版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、字符串和文件 I/O本讲内容1. 字符串2. 文件I/O命令串口/GPIB接口执行结果1. 字符串字符串是ASCII字符(和其他字符)的集合,用于文本的屏幕显示,仪器控制时的命令与结果传送和文本文件操作。1. 字符串 字符串相关控件控件选板,新式-字符串与路径子选板和列表与表格子选板 字符串常量函数选板,编程-字符串输入任意字符串其他预定义字符串常量定义多个“项-值”对输入和输出控件底色不同1. 字符串1. 字符串输入控件和输出显示控件运行程序2. 组合框控件组合框输入控件,未定义任何项组合框出现项列表输出所选项对应值(字符串)1. 字符串3. 表格和Express表格表格是字符串组成的2维数
2、组添加Express表格时自动添加了对“创建表格”Express VI的调用延时1秒行首“列首字符串”属性“行首字符串”属性采用属性节点动态指定行首和列首列首在Express VI的对话框中设置,“包含时间数据”行首和列首通过快捷菜单的显示项子菜单设置1. 字符串4. 树形控件按层次组织数据 点击输入树形控件项将鼠标指针所在项(和子项)降低一个层次 在某一项上弹出快捷菜单 编辑每一项的标识符(Tag)将鼠标指针所在项(和子项)提高一个层次 树形控件输出所选项的标识符1. 字符串字符串的显示方式字符串输入控件、输出显示控件,通过快捷菜单配置为如下显示方式之一:a) 正常显示(Normal Dis
3、play)- 显示可打印字符;b) 代码显示( Codes Display)- 采用反斜杠代码显示正常方式下不可显示的字符如空格,制表符,等等;多用于程序调试、向仪器设备传输数据;c) 密码显示(Password Display)- 以*号显示所有字符,包括空白;d) 十六进制显示(Hex Display)- 采用十六进制显示所有字符,用于程序调试。代码LabVIEW中含义代码LabVIEW中含义b退格符t制表符f进格符s空格符n换行符反斜线:“”r回车符%百分比符号1. 字符串常用代码字符1. 字符串典型字符串操作函数1. 字符串长度(String Length)功能:返回字符串中的字符/字
4、节个数;2. 连接字符串(Concatenate Strings)功能:按顺序连接所有输入字符串成为一个新字符串;输入可以为1维字符串数组;1个汉字占2个字节(byte)1. 字符串3. 截取字符串(String Subset)功能:从输入字符串的“偏移量”位置开始,取出所要长度的子字符串;4. 转换为大写字母(To Upper Case)和转换为小写字母( To Lower Case )字符串中字符的索引从0开始!未接“长度”参数表示到串尾注意中文的处理1. 字符串5. 替换子字符串(Replace Substring)功能:删除“偏移量”开始的“长度”个字符的子字符串,然后插入“子字符串”
5、;即在指定位置插入(“长度”为0)、删除(“子字符串”为空)或替换子字符串;6. 搜索替换字符串(Search and Replace String)功能:查找并替换指定字符串;快捷菜单可打开“正则表达式”选项1. 字符串正则表达式(Regular Expression):使用特殊语法的表达式,其中包含查找复杂字符串所依照的规则或模式;类似文件名搜索时使用的通配符*和?,但更复杂和强大。寻找和替换所有匹配打开了“正则表达式”选项a-zA-Z*at “at”之前有0或多个字母所有匹配都替换为“NULL”特殊字符解释.匹配任何单个字符,换行除外。例如:.t匹配at、bt、2t、_t,等等*标记可以
6、出现0次或多次的模式。例如be*将e标记为可出现0次或多次的模式,因此be*匹配believe中的be、beep中的bee和bat中的b+标记出现1次或多次的模式。例如 be+可以匹配believe中的be、 beep中的bee,但不能匹配bat?标记出现0次或1次的模式。be?可以匹配believe中的be、 bee中的be、 beep中的be,以及bat中的b标记模式的一部分,可以出现任意次数。例如be2 匹配至少跟随了两个e的b字符,be0,3匹配至多跟随了三个e的b字符,be2,3匹配至少跟随了两个e,至多跟随了三个e的b字符建立字符类,可以匹配某个字符集中的任何一个字符。例如abc1
7、23匹配字符a、b、c、1、 2或3中的任何一个-指定字符范围。例如 a-z匹配任何小写字母,a-zA-Z0-9匹配任何小写、大写或数字字符。可以使用字符类匹配任何不在某一字符集中的字符,将号添加到字符类的开始。例如0-9匹配任何非数字字符,a-zA-Z0-9匹配任何非字母非数字字符()表示部分匹配,使用竖线|分割可能的匹配,例如(cat|dog) catcher匹配cat catcher或dog catcher。也可使用多个部分匹配,例如(a|the) (cat|dog)匹配a cat、a dog、thecat或the dog|表明多个可能的匹配,例如cat|dog匹配catcher的cat
8、或者big dog中的dog仅匹配字符串的开始,例如dog匹配dog catcher中的dog,但不匹配the dog中的dog仅匹配字符串的结尾。表示不进行正则表达式解析的特殊字符。以下反斜杠字符具有特殊含义: b 代表单词(word)边界。单词边界不是属于某个单词的字符,但与单词字符相邻。 单词字符指字母数字字符或者下划线_。例如bhat匹配hatchet中的hat,但不匹配that,hatb匹配that中的hat,但是不匹配hatchet。bhatb匹配hat中的hat,但不匹配that或hatchet c 匹配任何控制或非打印字符 w 匹配任何单词字符,等效于a-zA-Z0-9_ W
9、匹配任何非单词字符,等效于a-zA-Z0-9_ d 匹配任何数字字符,等效于0-9 D 匹配任何非数字字符,等效于0-9 s 匹配任何空白字符,包括空格,换行(newline) ,制表符,回车,等等 S -匹配任何非空白字符 n -匹配换行字符 t - 匹配制表符 r - 匹配回车符 031 - 匹配8进制字符(8进制的31) x3F - 匹配16进制字符(16进制的3F)$1. 字符串7. 匹配正则表达式(Match Regular Expression)功能:从“输入字符串”的“偏移量”位置开始查找“正则表达式”,找到后,按其所在位置将“输入字符串”分为三段;从一段文本中提取Email地址
10、(此处给出两种不同的正则表达式方案)1. 字符串8. 格式化日期/时间字符串(Format Date/Time String)功能:以指定的格式显示时间字符串;9. 扫描字符串(Scan From String)功能:扫描输入字符串,提取表示数据的子串并按照给定格式进行转换;提取和转化浮点数可能为电压表返回的电压查询结果(伏特,直流,5.36)1. 字符串10. 格式化写入字符串(Format Into String)功能:将多种数据转化为字符串;以上两个函数,弹出快捷菜单,选择编辑格式字符串选项;通过对话框配置格式字符串,降低难度。2. 文件I/O 计算机文件供计算机程序所使用,是存储信息的
11、容器,且经常基于持久存储机制如磁盘驱动器;文件的持久存储指的是当前运行的程序结束后,文件仍可被其他程序所使用; 操作系统中,文件组织为字节序列; 文本文件(text file)包含按行组织的由字符组成的可读文本,且在最后一行后包含文件结束符(end-of-file);文本文件采用文本编辑程序(如记事本)打开文件文件IO文件IO 对于一个完整的测试系统或数据采集系统,我们经常需要将硬件的配置信息硬件的配置信息写入配置文件或者将采集到的数据采集到的数据以一定格式存储在文件中保存数据。因此LabVIEW提供了强大的文件I/O函数用以满足不同的文件操作需求。 选择合适的文件类型选择合适的文件类型 La
12、bVIEW支持的文件类型支持的文件类型 文本文件(文本文件(Text Files) 表单文件表单文件(Spreadsheet Files) 二进制文件(二进制文件(Binary Files) 数据记录文件(数据记录文件(Datalog Files) XML文件文件 配置文件(配置文件(Configuration Files) 波形波形(Waveform)文件文件 基于文本的测量文件(基于文本的测量文件(.lvm文件)文件) 数据存储文件数据存储文件(.tdm文件文件) 高速数据流文件文件高速数据流文件文件(.tdms文件文件) 二进制文件(二进制文件(Binary Files) 这是最有效率的
13、一种文件存储格式,它占用的硬盘空间最少而且读写速度最快。它将二进制数据,譬如32位整数以确定的空间存储4个字节来存储,因此不会损失精度,而且可以随意的在文件指定位置读写数据。 二进制文件的数据输入可以是任何数据类型,譬如数组和簇等复杂数据,但是在读出时必须给定参考 读写二进制文件 二进制文件是计算机文件中最常见的文件。它占用空间最小,适合于连续存储大量数据。同时,它的存储格式与数据在内存中的存储格式一致或者类似,很多情况下甚至是内存的映射。因此,无论是存储还是读取都是速度最快的,而且还具有非常高的安全性。如果不知道数据的格式,很难分析出文件的格式。2. 文件I/O 二进制文件(binary f
14、ile)包含任意内容,如可执行程序,图像,声音,压缩过的其他文件图片文件,JPG格式二进制文件采用十六进制编辑程序(如UltraEdit)打开使用文本编辑程序打开二进制文件时出现“乱码”,即强制按字符显示实际上不是字符的二进制数据2. 文件I/O文件文件IO2. 文件I/O 文本文件简单直观,很多程序都可打开,但占据较多存储空间;二进制文件占据较少空间,但具体数据存储格式由程序自定义,只有特定程序可以打开; Windows系统中的文件扩展名:提示文件格式,指示双击时操作系统调用相应的程序打开文件; 将一个文本文件的扩展名(.txt)改为图片文件扩展名(.jpg)并不能使文本文件变为图片文件,反
15、之亦然;这种改变只会引导操作系统使用错误的程序打开文件。2. 文件I/O文件文件IO2. 文件I/OLabVIEW提供了丰富的文件I/O函数和功能,主要包括:打开和关闭文件;移动和重新命名文件与目录;改变文件属性;在文件中读取和写入数据;创建、修改和读取配置文件 。2. 文件I/O文件I/O操作步骤,两种编程思路创建/打开文件读写文件关闭文件 使用高级函数/VI,由编程者管理各个步骤,使用稍复杂,但灵活,效率高(底层函数)创建/打开,读写,关闭文件 使用简单函数/VI,内含文件I/O的各个步骤,使用简单,灵活性差(高层函数)2. 文件I/O2. 文件I/O2. 文件I/O函数选板,编程-文件I
16、/O子选板高级文件I/O函数(部分)路径处理文件路径控件和常量控件选板,新式-字符串与路径简单文件I/O函数配置文件(.ini)I/O函数,保存应用程序参数配置函数选板,编程-文件I/O-文件常量2. 文件I/O电子表格文件?按表格形式组织的文本文件,行间采用换行分隔,行内数据采用指定符号分隔例:存储二维整数数组的电子表格文件1.dat,行内数据采用制表符(t)分隔2.dat,行内数据采用逗号(,)分隔经过文本导入向导,在Excel中打开采用默认的制表符“t”作为分隔符指定使用逗号“,”作为分隔符2. 文件I/O文件I/O的简单函数1. 写入电子表格文件(Write To Spreadshee
17、t File)功能:将1维或2维数值或字符串数组转化为表格形式的字符串,并写入到文件中;若“文件路径”参数未接入,则弹出文件对话框;“分隔符”参数指定行内分隔符,默认为制表符t。将2维整数数组写入电子表格文件(对应前例)2. 文件I/O2. 读取电子表格文件(Read From Spreadsheet File)功能:从电子表格形式的文本文件中读取数据并转化为1维或2维数组,数组元素类型为整型、浮点型或字符串型。多态VI选择器 在列表中选择具体使用哪个函数/VI实例读取1.dat,默认为采用制表符“t”分隔行内数据多态VI:具有相似功能和不同参数类型的VI的集合2. 文件I/O3. 写入测量文
18、件(Write To Measurement File)功能:将DDT类型信号写入LabVIEW自定义的测量文件,文件可以是文本文件(.lvm),或者二进制文件(.tdms和.tdm)。Express VI,通过对话框配置参数和功能选择文本还是二进制格式二维标量数组 - 行是通道2. 文件I/O4. 读取测量文件(Read From Measurement File)功能:从文本(.lvm)或者二进制(.tdms和.tdm)格式的测量文件中读取DDT类型信号。Express VI,通过对话框配置参数和功能打开/新建文件关闭文件读/写文件错误簇,传递错误信息2. 文件I/O以上涉及电子表格文件和
19、测量文件的函数都是在内部封装了多个文件操作步骤的简单函数。文件I/O的高级函数高级函数经常使用文件引用句柄(refnum),文件引用句柄是代表文件(及其资源)的唯一标识符;高级函数通常以引用句柄和错误簇串在一起使用:文件引用句柄(refnum),用于访问已打开的文件资源2. 文件I/O在循环中使用文件I/O函数的效率问题打开/新建文件读/写文件关闭文件创建/打开,读写,关闭文件在循环内部使用简单函数,每次循环都执行打开文件和关闭文件的多余步骤,效率较低简单函数高级文件I/O函数使用高级函数,在循环外部打开和关闭文件,在循环内部进行读/写,效率较高2. 文件I/O1. 打开/创建/替换文件(Op
20、en/Create/Replace File)功能:打开已有文件,或创建新文件并打开,或替换已有文件并打开;打开文件后返回文件引用句柄;未接入“文件路径”参数时弹出文件选择对话框。2. 关闭文件(Close File)功能:关闭输入参数“引用句柄”所代表的已打开文件。3. 格式化写入文件(Format Into File)和扫描文件( Scan From File )与字符串相应函数相似2. 文件I/O4. 写入文本文件(Write to Text File)功能:将接入“文本”参数的字符串或字符串数组写入文本文件,字符串数组中每个元素将作为文件中的一行;“文件”参数可以是路径或文件引用句柄。
21、当前VI所在目录获得绝对路径 - (当前VI所在目录)/a.txt打开该选项读取文本行,以每行文本为元素组成字符串数组2. 文件I/O5. 读取文本文件(Read From Text File)功能:从文本文件中读取指定数目的字符或文本行。已打开“读取行”选项-1表示读取文件全部内容2. 文件I/O6. 写入二进制文件(Write To Binary File)功能:将数据写入二进制文件。波形自身频率50 Hz,0.1秒波形包含5个完整正弦周期采样信息,产生0.1秒的波形可以直接写入任何数据类型的数据!2. 文件I/O7. 读取二进制文件(Read From Binary File)功能:从二
22、进制文件中读取数据。空的波形数据,指定二进制文件中存储的数据的类型5个周期的正弦波形数据记录文件的读写 由于二进制文件格式的不确定性,使用非常困难,因此LabVIEW提供了具有格式的二进制文件,即数据记录文件。数据记录文件特别适合于数据块的存储。数据记录文件内部是以记录的方式存储数据的,一个记录就是一个完整的数据块,文件位置定位采用记录号,因此寻址非常快。 文件常量和通用目录、文件节点函数 除了文件常量之外,在高级文件函数选板中还提供了常用的文件操作函数,比如拷贝、删除、移动、创建文件夹和罗列文件夹等。构造路径的方法 创建和拆分路径 当前VI路径函数在编辑和运行时的区别 解决开发和运行环境路径问题的几种方法INI文件的读写文件的读写 在Win95版本以前,Windows操作系统还没有引入注册表的概念,当时Windows是利用INI文件来存储计算机相关配置的。 在API里,Windows提供了丰富的API函数来操作INI文件,LabVIEW里也专门有个子类别封装了这些API函数。LabVIEW使用INI文件来存储配置,应用非常广泛,生成执行文档后也自动生成一个INI文件。 注册表的读写 Windows注册表的重要性是不言而喻的,Windows绝大部分重要信息都记录在注册表中。读取注册表是Windows编程的常用操作。注册表是特定格式的二进制文件,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 36028.1-2025靠港船舶岸电系统技术条件第1部分:高压供电
- 2026年实时数据监控与建筑设备自动化的结合
- 2026年电缆选型的关键因素
- 2026年桥梁工程质量预控技术研究
- 2026春招:网易题库及答案
- 货运企业组织安全培训课件
- 医疗行业会议组织礼仪
- 护理专业人才素质与能力评价
- 医疗护理专业伦理案例分析
- 2026年德宏职业学院单招综合素质笔试备考试题带答案解析
- 行政部给公司员工培训
- 中考物理 题型06【电学实验题】押题必做15题
- 企业安全生产责任制评估与改进方案
- 昆仑神话叙事的百年学术史重构与跨学科研究
- (必刷)湖南专升本《基础护理学》考点精粹必做300题-含答案
- 隧道监测与数据采集技术方案
- 总经办办公室工作总结及计划
- 围堤水下抛石工程的施工技术方案与安全措施
- 2025-2030中国钢结构建筑在新能源设施建设中的应用前景报告
- 焊工安全培训考试题(附答案)
- 2025年直招军官面试题型及答案
评论
0/150
提交评论