开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 1501|回复: 0
收起左侧

[图文教程] VB6.0基础教程 顺序文件的访问

[复制链接]

结帖率:100% (11/11)
发表于 2013-2-22 23:25:53 | 显示全部楼层 |阅读模式   河北省衡水市

在程序中访问顺序文件通常有3个步骤:打开、读取或写入、关闭。

    1.打开文件。

    在对顺序文件进行操作之前,必须使用Open语句打开它,同时要告诉操作系统对文件进行什么操作。

    Open语句的一般形式如下:

    Open <文件名> For <访问模式>] [Access<操作类型)][锁定]As[#]<文件号>
    [Len=<记录长度>]

    其中各参数的含义如下:

    文件名:是指要访问的顺序文件的名称以及文件所在的路径。

    文件的访问模式是指要对文件进行什么操作,有以下3种模式:

    OUTPUT:对文件进行写操作,即将数据写入文件。
    INPUT:对文件进行读操作,即将数据从文件中读入内存。
    APPEND:将数据追加到文件末尾。

    操作类型用来规定对被打开文件所能进行的操作,有以下3种类型:

    READ:只读。
    WRITE:只写。
    READWRITE:读写都可以。

    锁定:用来规定是否允许其他进程对本次打开的文件进行访问,有以下3种情况:

    Shared:共享,即允许其他进程对本次打开的文件进行读写操作。这也是默认设置。
    Lock Read:禁止其他进程对本次打开的文件进行读操作。
    Luck Write;禁止其他进程对本次打开的文件进行写操作。
    Lock Read Write:禁止其他进程对本次打开的文件进行读写操作。

    文件号:为被打开的文件指定一个文件号,在以后访问该文件时,以文件号来代表文件。文件号的取值为1~511之间的整数。每个文件号对应唯一的一个文件,不能将已使用的文件号再指定给其他文件。

    记录长度:用来指定数据缓冲区的大小,其值范围为小于或等于3767的整数。

    提示:如果以OUTUP访问模式或打开一个不存在的文件,则VB会自动创建一个相应的文件。

   2.关闭文件。

    在对打开的文件进行各种操作后,还必须将其关闭,否则会造成数据的丢失。

    实际上,对顺序文件进行写操作时,将数据写入的是缓冲区,只有关闭文件时才将缓冲区中的数据全部写入文件。

    使用Close语句可关闭文件,其形式如下:

    Close[#文件号>][,<文件号>]…

    文件号是指使用Open语句打开文件时为文件指定的文件号。如果在Close语句中忽略文件号,则会关闭所有己打开的文件。

    例如;

    Close #1            关闭1号文件
    Close #2,#3,#4    关闭2号、3号和4号文件

    3.写操作。

    如果顺序文件以OUTPUT模式或APPEND模式打开,就可以使用Write或Print语句向该文件写入数据。

    (1)Print语句


Open e\mytext.txt For Output As #1
Print #1.Spc(5);“人员资料”
Print #1                 空行
Print #1. “云  云”,“女”,“22
Print #1. “郝  云”;“男”,“23
Print #1. “王  垠”,“女”,“23
Print #1.


    该代码被执行后,会在E盘新建一个mytext.txt文件,使用Windows自带的记事本可以查看该文件的内容及格式。如果mytext.txt文件已存在,则其原来的内容将被新的内容覆盖掉。这是因为打开文件的模式为OUTPUT,如果以APPEND模式打开文件,则新内容会追加到原内容之后。

    在实际编程中,经常要将文本框中的文本以文件的形式保存到磁盘_上,这时也可以使用Print语句来实现。

    例如,下列代码是将文本框(Textl)中的内容保存到D盘上,文件名为Test.txt.

    Open “d:\Test.txt” For Output As #1
    Print #1,Text1.Text
    Close #1

    (2)Write语句。

    语法:Write #<文件号>,[输出列表]

    Write语句与Print语句基本相同,各数据项之间以逗号隔开。区别在于Write语句以紧凑格式存放,且同时输出字符串上的双引号与数据项之间的逗号。

    例如:

    Print #1, “云 云”,“女”,“22”

    写入文件的内容与格式为:云 云   女     22

    Write #1,“ 云 云”,“女”,“22”

    写入文件的内容与格式为:“云 云”,“女”,“22”


  4.读操作。

    读操作是指将文件中的数据读取到变量中。如果文件以INPUT模式打开,就一可以使用Input语句、Line Input语句或Input函数对文件进行读操作。

    (1)Input语句语法:Input #<文件号>,<变量列表>

    变量用来存放从文件中读取的数据,各变量以逗号隔开,变量的类型应该与文件中所存储的数据类型一致。在读取数据后,各数据项分别存放在所对应的变量中。

    例如,如果存放在E盘中的Test.txt文件的内容及格式为:

    云  云,女,22
    王  垠,男,21
    ·····

    执行下列代码可将该文件中的内容打印在窗体上。


Open C\Tect.txt For Input As #1
Do while Not EOF(1)
   Input #1,a,b,c               3个数据项分别存放在3个变量中。
   Print abc
Loop
Close #1
            22
            21
    ····


    (2)Line Input语句。

    语法:Line Input#<文件号),<变量>

    该语句以行来读取数据,并存放在变量中,它不把逗号当作数据项的分界符。变量必须是字符串型或变体型。

    例如,使用Line Input语句在窗体上打印Test.txt文件内容的代码如下:

    结果如下

    云  云,女,22
    王  垠,男,21

    (3) Input函数。

    语法:Input(n,#<文件号>)Input函数可以从文件中读取指定个数的字符,其中字符中包括空格、逗号、双引号和回车符等。参数n用来指定要读取的字符个数。

    例如,

    Open “e:\Test.txt” For Input As #1
    Print Input(8,#1)      在窗体上打印文件Test.txt中的前12个字符
    Close #1

    结果如下:

    云  云,女,2


您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表