首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室软件测试频道
Google
首页 资讯动态 测试技术 测试工具 行业软件测试 测试管理 测试下载 经验分享 软件质量 其他技术 RSS订阅 博客 论坛
您现在的位置: 中国IT实验室 >> 软件测试 >> 测试工具 >> Robot >> 正文

Robot中的文件操作

           3、二进制文件

           读写二进制文件的方法和读写随机文件的方法基本相同,下面是相关的语句格式及其说明:

           格式: Get [#]fileNumber ,[Pos], Var

           功能: 用二进制方式,从文件的中指定的位置开始读取,所给变量长度的数据

          说明:

          (1)FileNumber是以二进制方式打开的文件号.

           (2)Pos用来指定读写操作发生时的字节位置,若省略,则使用当前文件指针位置.

           (3)Var是用来存放读出的数据的变量.该语句会自动根据var变量包含的字节长度读取适当的文件,如果Var是一个可变长度的字符串变量,则传送的字节数等于Var中目前的字节数.对于文件长度的判断我们可以使用Lof()函数,Eof()函数检查文件的结尾位置.

           下面的代码复制studert.txt文件到student1.txt文件中

         Dim ar As String * 1, i As Integer
        Open "c:\student.txt" For Binary As #1
        Open "c:\student2.txt" For Binary As #2
        For i = 1 To LOF(1)
        Get #1, , ar
        Put #2, , ar
        Next i
        Close #1, #2

        二)写文件

           1、 顺序文件

          写顺序文件我们可以用Write # 和Print #语句向一个已经打开的文件中写入数据.

          下面是他们的格式和说明:

          Print # 的语法格式:

          Print # 文件号,变量列表

           例如,将文本框中的文本写到文件中,代码如下:

        Open "file.txt" For Output As #filenum

        Input #filenum, text1.text

          Write # 语句的语法格式:

         Write # 文件号,变量列表

          说明:用Write # 语句写入的信息便于以后用Input #语句来读取数据,因为Write #语句自动将写入到文件中的信息用逗号分开,并为字符串数据加上双引号.例如:

         Open "student.txt" For Output As #filenum

        Write #filenum, "张三", "初一年级", 14

        Write #filenum, "李四", "职业高中", 18

          2、 随机文件

          向随机文件中写入数据,使用Put #语句.语法格式如下:

         Put [#] FileNum ,[RecNum],UserType

           说明:

          (1) FileNum 是要打开的文件号;RecNum是要写入的记录号,若省略,则再上一次用Get 和Put语句所读写过的记录的后一条记录中写入,如果没有执行过Get 和Put语句,就从第一条记录开始

          (2)UserType 是包含要写入数据的用户自定义的数据类型变量.例如:我们向前面的student.txt文件中的第5个记录写入数据,可用这些语句:

         stud.No = 0301
        stud.Name = “王武”
        stud.Age =20
        Put #1 ,5,stud

          如果要插入的数据不只一两条的话,首先要确定文件和每条记录的长度,这样就可以计算出文件中究竟有多少条记录.我们可以用Lof()函数返回文件的长度,Len()函数返回每个记录的长度,计算文件中的记录个数可以用文件的长度除以给个记录的长度.示例如下:

        Nextrec= (Lof(1)\Len(UserType))+1

        Put #1,Nextrec,UserType

           3、二进制文件

           下面是以二进制方式写入文件的语句格式及其说明:

           格式:

         Put [#]fileNumber ,[Pos], Var

           功能: 用二进制方式,从文件的中指定的位置开始写入,所给变量长度的数据

          说明:

           (1)FileNumber是以二进制方式打开的文件号.

           (2)Pos用来指定写操作发生时的字节位置,若省略,则使用当前文件指针位置.

           (3)Var是用来存放写入的数据的变量.该语句会自动根据var变量包含的字节长度写入文件,如果Var是一个可变长度的字符串变量,则传送的字节数等于Var中目前的字节数.

          使用方法可参考二进制文件的读操作.

        我们在进行系统自动化功能测试的时候,需要Robot从外部文本文件中读入到变量中,类似于实现数据池(datapool)的功能,这时可以通过对文件操作的几个语句来实现,其中 Open 语句能够对文件输入/输出,LOF函数返回一个 Long型值,表示用 Open 语句打开的文件的大小,该大小以字节为单位。Input函数从文件中读入数据,而Print函数则把数据写到文件中。下边是个代码例子

           Sub Main
                Dim Result as Integer
                Dim filename as String
                Dim VarValue as Strng 
              filename="c:\myext.txt"
            Open filename For Input As #1
            VarValue = Input$(Lof(1),#1)
           Close #1
           End Sub

        那么如何把变量写回文本文件呢?下边是个例子程序:

         Sub Main
                Dim Result as Integer
                Dim filename as String
                Dim VarValue as Strng 
                VarValue = “这是一个测试
           filename="c:\myext.txt"
           on error resume next
           open "c:\file.txt" for output as #1
           print #1,varValue
           close #1
        end sub

上一页  [1] [2] [3] 

【责编:michael】

中国IT教育

相关产品和培训
文章评论
 专题推荐

 ·建立可全面监控Squid代理服务器
 ·华为认证题库、模拟器下载专题
 ·嵌入式操作系统Linux资料下载(A)
 ·JAVA的应用编程接口——JAVA API详解…
 ·Linux Shell学习技术专题[上]…
 ·windows Server 2008专区…
 ·WEB开发ASP.NET和PHP、JSP究竟学哪个
 ·五步带你入门XML
 ·零距离接触OCP_Oracle认证体系全攻略
 ·揭秘:网络工程师职业发展路线图
 最近更新
 博客论点
 频道精选
 软件测试频道导航