模块
目录
索引 🔎︎

# Input# 语句

从打开的顺序文件读取数据。

## 语法:

Input #FileNumber As Integer; var1[, var2[, var3[,...]]]

## 参数:

「FileNumber」: 包含要读取的数据的文件编号。该文件必须使用含有 INPUT 关键字的 Open 语句打开。

「var」: 数字或字符串变量，用于存放从打开的文件中读取的值。

「Input#」语句从打开的文件中读取数值或字符串，并将这些数据指定到一个或多个变量。读取数字变量的过程在遇到第一个回车 (Asc=13)、换行 (Asc=10)、空格或逗号时停止，而读取字符串变量的过程在遇到第一个回车 (Asc=13)、换行 (Asc=10) 或逗号时停止。

在打开的文件中，数据和数据类型的出现顺序必须与「var」参数中变量的传送顺序相同。如果将非数字类型的值指定给某个数字变量，「var」将被指定为「0」。

不能将逗号分隔的记录指定给字符串变量。文件中的引号 (") 也将被忽略。如果要从文件中读取这些字符，可以使用「Line Input#」语句逐行读取纯文本文件 (只包含可打印字符的文件)。

如果在读取某个数据元素时到达了文件末尾，就会出错，进程也会异常中止。

## 示例:

    Sub ExampleWorkWithAFile
    Dim iCount As Integer
    Dim sName As String
    Dim sValue As Integer
    Dim sFileName As String

    sFileName = "c:\data.txt"
    iCount = Freefile

    ' 写入数据 (稍后通过输入读取) 到文件
    Open sFileName For Output As iCount
    sName = "Hamburg"
    sValue = 200
    Write #iCount, sName, sValue
    sName = "New York"
    sValue = 300
    Write #iCount, sName, sValue
    sName = "Miami"
    sValue = 459
    Write #iCount, sName, sValue
    Close #iCount

    iCount = Freefile
    ' 通过输入读取数据文件
    Open sFileName For Input As iCount
    Input #iCount; sName, sValue
    MsgBox sName & " " & sValue
    Input #iCount; sName, sValue
    MsgBox sName & " " & sValue
    Input #iCount; sName, sValue
    MsgBox sName & " " & sValue
    Close #iCount
    End Sub