首页 百科知识 顺序文件的操作

顺序文件的操作

时间:2022-06-19 百科知识 版权反馈
【摘要】:二、顺序文件的操作顺序存取文件简称顺序文件,是指数据在存取时,按照数据存入的先后顺序处理。在对顺序文件的读写操作之前,必须用Open File语句打开,打开的方式通过For子句指定,分别是Input、Output和Append。打开顺序文件后,就可以进行后续的读写操作。]Write#语句可定义一系列用逗号分隔的表达式,表示向文件中写入的内容。

二、顺序文件的操作

顺序存取文件(Sequence Access File)简称顺序文件,是指数据在存取时,按照数据存入的先后顺序处理。在对顺序文件的读写操作之前,必须用Open File语句打开,打开的方式通过For子句指定,分别是Input、Output和Append。打开顺序文件后,就可以进行后续的读写操作。

1.读顺序文件

以Input方式打开一个文件后,可用Input#语句或Line#语句读文件中的数据。

Input#语句的语法形式为:

Input#filenum,var_name[,var_name…]

其中,filenum为用Open File语句打开的文件号,var_name为变量名。

Input#语句将打开文件的当前数据赋予指定的一个或多个变量中。读数据时,MapBasic自动将数据转换成变量定义的数据类型,当读数据到字符串变量时,Input#语句将空行作为空字符串,当读数据到数值变量时,Input#语句将空行作为零值。

在调用Input#语句时,可以结合循环语句和EOF()函数来读取文件中的数据。

Input#语句只能一个数据项、一个数据项地读取数据,而Line Input语句可从文件中读取一行数据并赋给字符串变量。Line Input语句的语法形式为:

Line Input[#]filenum,var_name

其中,var_name为一字符串变量名。Line Input语句的作用是从打开的顺序文件中读取一个记录,把它作为一个字符串赋给指定的字符串变量。

2.写顺序文件

以Output或Append方式打开一个文件后,利用Print#语句和Write#语句可以向文件写数据。

(1)Print#语句的语法形式为:

Print#file_num[,expr]

其中,expr为要写入文件中的表达式。MapInfo将expr表达式的内容写成文件的一行。由Print#语句写入的数据用Line Input语句来读取。以下例程打开一个文本文件,然后依次读入文件的一行数据,并将之写到另一个文件中。

Dim str As String

Open File"original.txt"For Input As#1

Open File"copy.txt"For Output As#2

Do While Not EOF(1)

Line Input#1 str

Print#2 str

Loop

Close File#1

Close File#2

(2)Write#语句的语法形式为:

Write#file_num[,expr…]

Write#语句可定义一系列用逗号分隔的表达式,表示向文件中写入的内容。如果语句中没有表达式,则MapBasic向文件写一空行。Write#语句写文件时,自动为串表达式加入双引号。由Write#语句写入的数据用Input#语句来读取。

注意,若以Output方式打开一个文件,不论所指定的文件名在磁盘中是否存在,都意味着建立一个新的数据文件,因此,用Output方式打开一个已存在的文件时应十分谨慎,以免使原有文件中的数据丢失。用Append方式则比较安全,无论是对新文件的写入或者文件的续写都能适用,不会造成丢失数据。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈