科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道应用软件利用Visual Basic命令操作文件

利用Visual Basic命令操作文件

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文列举了利用Visual Basic操作文件的命令,包括打开和关闭文件、读文件、写文件,并对它们分别从顺序文件、随机文件、二进制文件三个方面给出。

作者:PC编程网  来源:PC编程网   2007年9月14日

关键字:

  • 评论
  • 分享微博
  • 分享邮件

说明:

(1) 参数filename和filenumber分别表示文件名或文件号。

(2)关键字Binary表示打开的是二进制文件

(3)对于二进制文件,不能指定字节长度。每个打开的二进制文件都有一个自己的指针,文件指针是一个数字值,指向下一次读写操作的文件中的位置。二进制文件中的每个”位置”对应一个数据字节,因此,有n个字节的文件,就有1到n个位置。

我们可以用Seek()函数返回当前的文件指针位置(即下一个要读写的字节);用Loc()函数返回上一次读写的字节位置,除非用Seek语句移动了指针,Loc()返回值总比Seek()的小1。我们来看下面的例子:

Open “student.txt” for Binary as #1

该语句用二进制的方式打开了student.txt文件。

(二)读文件

1、顺序文件

顺序文件的读取有三种方式:

(1)Line Input # 语句

该语句从打开的顺序文件中读取一行数据。这里的一行指的是从当前指针位置开始到回车符或回车换行符之间的所有数据。Line Input #语句的语法格式如下:

Line Input #文件号,变量号

说明:“文件号”是打开文件时所用的文件号;“变量号”使用来存放读出数据的一个或多个变量,如果有多个变量,中间用空格分割开。Input#语句为参数列表中的每一个变量读取文件的一个域,并将读出的域存入变量中。该语句只能顺序的从第一个域开始,直到读取想要的域。

请看下面代码:

Dim strLine As String

Open "c:\vb\test.txt" For Input As #1

Do Until EOF(1)

 Line Input #1, strLine

 text1.Text = text1.Text + strLine + Chr(13) + Chr(10)

Loop

Close #1

此段代码逐行读取一个文件到文本框中。

(2)Input函数

此函数可以从顺序文件中一次读取指定长度的字符串。具体地说,就是从文件的当前位置开始,读取指定个数的字符,然后将他们返回。Input函数可以读取包括换行符,回车符,空格符等在内的各种字符。下面是它的语法格式:

变量 = Input(串长度,文件号)

例如,要从一个打开文件中读取12个字符并复制到变量file中,我们可以这样写:

file = Input(12,filenum)

如果要将整个文件复制到变量,请使用InputB函数将字节从文件复制到变量。由于InputB函数返回一个ASCII字符串,因此,必须用StrCopy函数将ASCII字符串转换为Unicode字符串。代码如下:

file = StrCopy (Input (LOF(filenanum),filenum),vbUnicode)

(3)Input #语句

Input #语句可以从文件中同时向多个变量内读入数据,而且读入的数据可以是不同类型的。

下面使它的语法格式:

Input # 文件号,变量列表

例如,我们要在文件student.txt中写入数据,下面是代码:

Open "student.txt" For Output As #filenum

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

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

Dim name As String, nianji As String, age As Integer

Dim name1 As String, nianji1 As String, age1 As Integer

Open "student.txt" For Input As #filenum

Input #filenum, name, nianji, age

Input #filenum, name1, nianji1, age1

Close #filenum

执行结果:

name=”张三” ,nianji = “初一年级” ,age =14

name=”李四” ,nianji = “职业高中” ,age =18

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章