IBM Lotus Symphony
|
读取打开的顺序文件中的数据。
Input #FileNumber As Integer; var1[, var2[, var3[,...]]]
FileNumber:包含要读取数据的文件号。文件必须通过 Open 语句使用关键字 INPUT 打开。
var:向其分配从打开的文件中所读取值的数字或字符串变量。
Input# 语句从打开的文件中读取数值或字符串,并将数据分配给一个或多个变量。读取数字变量,直到第一个回车符(Asc=13)、换行(Asc=10)、空格或逗号。读取字符串变量,直到第一个回车符(Asc=13)、换行(Asc=10)或逗号。
打开的文件中的数据和数据类型显示的顺序必须与“var”参数中传递的变量一样。如果将非数值分配给数字变量,那么会为“var”分配值“0”。
无法将由逗号分隔的记录分配给字符串变量。文件中的引号(")也会被忽略。如果要从文件中读取这些字符,请使用 Line Input# 语句逐行读取纯文本文件(仅包含可打印字符的文件)。
如果读取数据元素时到达文件末尾,那么会发生错误,并且会中止该过程。
Sub ExampleWorkWithAFile
Dim iNumber As Integer
Dim sLine As String
Dim aFile As String
Dim sMsg as String
aFile = "c:\data.txt"
iNumber = Freefile
Open aFile For Output As #iNumber
Print #iNumber, "This is a line of text"
Print #iNumber, "This is another line of text"
Close #iNumber
iNumber = Freefile
Open aFile For Input As iNumber
While not eof(iNumber)
Line Input #iNumber, sLine
If sLine <>"" then
sMsg = sMsg & sLine & chr(13)
end if
wend
Close #iNumber
Msgbox sMsg
End Sub